Submission
Status:
PPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: TonnamSora
Problemset: บวกเลขฐาน
Language: cpp
Time: 0.002 second
Submitted On: 2025-09-25 20:53:47
#include <iostream>
#include <cstring>
#include <math.h>
using namespace std;
int power(int x, int y){
int result = 1;
for(int i = 0; i < y; i++){
result *= x;
}
return result;
}
int main(){
int n;
string Num1, Num2;
cin >> n >> Num1 >> Num2;
int Tennum1 = 0, Tennum2 = 0;
int a = Num1.length();
int b = Num2.length();
for(int i = 0; i < a; i++){
if(Num1[i] >= 'A'){
Tennum1 += (Num1[i] - 'A' + 10) * power(n, a - i - 1);
}
else{
Tennum1 += (Num1[i] - '0') * power(n, a - i - 1);
}
}
for(int i = 0; i < b; i++){
if(Num2[i] >= 'A'){
Tennum2 += (Num2[i] - 'A' + 10) * power(n, b - i - 1);
}
else{
Tennum2 += (Num2[i] - '0') * power(n, b - i - 1);
}
}
int Sumtennum = Tennum1 + Tennum2;
//cout << Sumtennum;
int Checkfordigits = Sumtennum;
int digit = 0;
if (Sumtennum == 0) {
cout << 0;
return 0;
}
while(Checkfordigits > 0){
Checkfordigits = Checkfordigits / n;
digit++;
}
int nnum[digit];
for(int i = digit - 1; i >= 0; i--){
nnum[i] = Sumtennum % n;
Sumtennum = Sumtennum / n;
}
for(int i = 0; i < digit; i++){
if(nnum[i] < 10){
cout << nnum[i];
}
else{
cout << char('A' + nnum[i] - 10);
}
}
}