Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
169867 | Wilbur | 进制数加法 | C++ | 解答错误 | 50 | 0 MS | 260 KB | 859 | 2024-08-20 18:48:54 |
#include <iostream> #include <algorithm> #include <string> using namespace std; int j; long long nn(string str) { long long a=0; for (int i = 0; i < str.size(); i++){ a*=j; if(str[i]>='0'&&str[i]<='9') a+=str[i]-'0'; if(str[i]>='a'&&str[i]<='z') a+=str[i]-'a'; if(str[i]>='A'&&str[i]<='Z') a+=str[i]-'A'; } return a; } int main() { string str,str1; long long a=0,b=0; cin>>j>>str>>str1; a=nn(str)+nn(str1); char ans[100000],n=0; while (a!=0){ int s=a%j; if (s>=0&&s<=9){ ans[n]='0'+s; } if (s>=10&&s<=36){ ans[n]='A'+s-10; } n++; a/=j; } for (int i = 0; i < n; i++){ cout<<ans[n-1-i]; } return 0; }