Submission
Status:
PPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: Catpao
Problemset: บวกเลขฐาน
Language: cpp
Time: 0.002 second
Submitted On: 2025-11-03 21:36:08
#include<bits/stdc++.h>
using namespace std;
int main()
{
int base,sum,sum_mod = 0,sumd = 0,b,c;
cin>>base;
string s1,s2;
cin>>s1;
cin>>s2;
int n1 = s1.size(),n2 = s2.size();
if(n1 < n2){
for(int i=0;i<(n2 - n1);i++){
s1 = "0" + s1;
}
}
else if(n2 < n1){
for(int i=0;i<(n1-n2);i++){
s2 = "0" + s2;
}
}
n1 = s1.size();
vector<int> a;
for(int i=n1-1;i>=0;i--){
b = s1[i];
c = s2[i];
if(b >= 65){
b = b - 55;
}
else{
b = b - '0';
}
if(c >= 65){
c = c - 55;
}
else{
c = c - '0';
}
sum = b + c + sumd;
if(sum >= base){
sum_mod = sum%base;
sumd = sum/base;
sum = sum_mod;
}
else{
sumd = 0;
}
a.push_back(sum);
}
if(sumd != 0){
a.push_back(sumd);
}
for(int i=a.size()-1;i>=0;i--){
if(a[i] >= 10){
cout<<char(a[i] + 55);
}
else{
cout<<a[i];
}
}
}