社区讨论
样例过了但是0分!有没有哪位大佬能说明是咋回事?
P8115 「RdOI R3.5」Table参与者 1已保存回复 0
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @lo1o1c2t
- 此快照首次捕获于
- 2023/10/23 00:11 2 年前
- 此快照最后确认于
- 2023/11/03 00:53 2 年前
CPP
#include<bits/stdc++.h>
using namespace std;
#define int unsigned long long
char c;
vector<int> num;
vector<string> s;
int t;
char d[17]="0123456789ABCDEF";
string tohex(int m)
{
string res="";
if(m==0) return "0";
while(m!=0)
{
char p=d[m%16];
res=p+res;
m/=16;
}
return "0x"+res;
}
signed main()
{
while(1)
{
scanf("%c",&c);
if(c=='}') break;
else if(c=='{') continue;
else if(c==',')
{
num.push_back(t);
t=0;
}
else
{
t*=10;
t+=(int)(c-'0');
}
}
num.push_back(t);
for(int i=0;i<num.size();i++)
{
s.push_back(tohex(num[i]));
}
cout<<"{";
for(int i=0;i<num.size()-1;i++)
{
if(to_string(num[i]).size()>s[i].size())
{
cout<<s[i]<<",";
}
else cout<<num[i]<<",";
}
if(to_string(num[num.size()-1]).size()>s[num.size()-1].size())
{
cout<<s[num.size()-1];
}
else
{
cout<<num[num.size()-1];
}
cout<<"}";
return 0;
}
输入:
CPP{1,314159,3141592653589793}
输出:
CPP{1,314159,0xB29430A256D21}
预期:
CPP{1,314159,0xB29430A256D21}
回复
共 0 条回复,欢迎继续交流。
正在加载回复...