Submission
Status:
PPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: him
Problemset: บวกเลขฐาน
Language: cpp
Time: 0.003 second
Submitted On: 2025-09-17 21:45:06
#include <bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(0);cin.tie(0);
int a;cin>>a;
string b,c;cin>>b>>c;
reverse(b.begin(),b.end());
reverse(c.begin(),c.end());
long long int sumb=0;
long long int pb=1;
long long int sumc=0;
long long int pc=1;
for(int i=0;i<b.size();i++){
if(b[i]>='A' && b[i]<='Z'){
sumb=sumb+pb*(b[i]-'A'+10);
pb=pb*a;
}
else{
sumb=sumb+pb*(b[i]-'0');
pb=pb*a;
}
}
for(int i=0;i<c.size();i++){
if(c[i]>='A'&&c[i]<='Z'){
sumc+=pc*(c[i]-'A'+10);
pc=pc*a;
}
else{
sumc+=pc*(c[i]-'0');
pc=pc*a;
}
}
// cout<<sumb<<'\n'<<sumc;
int d=sumc+sumb;
// cout<<d;
int r;
string s;
while(d>=a){
r=d%a;
if(r<10) s+=r+'0';
else s+=r-10+'A';
d=d/a;
}
r=d;
s+='0'+r;
// cout<<s;
reverse(s.begin(),s.end());
for(auto e:s){
cout<<e;
}
return 0;
}