Submission
Status:
PPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: kenmuay
Problemset: บวกเลขฐาน
Language: cpp
Time: 0.002 second
Submitted On: 2025-10-12 20:51:36
#include <bits/stdc++.h>
using namespace std;
int changebase(int base, string n){
int l=n.size();
int sum=0;
for(int i=0; i<l; i++){
int m;
if(n[i]-'0' >= 0 && n[i]-'0'<=10) m=n[i]-'0';
else if(n[i]-'A' >=0 && n[i]-'A'<=6) m=n[i]-'A'+10;
sum += m*pow(base,l-i-1);
}
return sum;
}
string changeback(int base, int n){
string sum;
if(n==0) return "0";
while(n!=0){
if(n%base<10) sum+=to_string(n%base);
else sum+=n%base-10+'A';
n/=base;
}
return sum;
}
int main(){
int base;
cin >> base;
string n1,n2;
cin >> n1 >> n2;
int a = changebase(base,n1);
int b = changebase(base,n2);
//cout << a << " " << b;
int sum=a+b;
string ans = changeback(base,sum);
reverse(ans.begin(),ans.end());
cout << ans;
return 0;
}