Submission
Status:
-------P-
Subtask/Task Score:
12/100
Score: 12
User: onlyme910
Problemset: บวกเลขฐาน
Language: cpp
Time: 0.003 second
Submitted On: 2025-10-07 21:46:15
#include <bits/stdc++.h>
using namespace std;
char digitToChar(int n) {
if (n < 10)
return '0' + n;
else
return 'A' + (n - 10);
}
int CharTodigit(char n){
if (n <= '9')
return n - '0';
else
return (n-'A')+10;
}
int main(){
int base;
string n1,n2;
cin >> base >> n1>> n2;
int ln1 = n1.length(),ln2 = n2.length();
int bin1 = 0,bin2 = 0;
for(int i = 0;i < ln1;i++){
cout << CharTodigit(n1[i]);
int bin = CharTodigit(n1[i]) * pow(base,ln1-i-1);
bin1 += bin;
}
for(int i = 0;i < ln2;i++){
int bin = CharTodigit(n2[i]) * pow(base,ln2-i-1);
bin2 += bin;
}
int sum = bin1+bin2;
string ans = "";
while(sum > 0){
int k;
k = sum%base;
sum = sum/base;
ans += digitToChar(k);
}
reverse(ans.begin(), ans.end());
cout << ans;
}