Submission
Status:
PPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: Habibi
Problemset: บวกเลขฐาน
Language: cpp
Time: 0.002 second
Submitted On: 2025-10-13 20:42:16
#include<stdio.h>
#include<string.h>
#include<math.h>
int main(){
int base;
scanf("%d",&base);
char string1[20];
char string2[20];
scanf(" %s %s",string1,string2);
int n1,n2;
n1=strlen(string1);
n2=strlen(string2);
// printf("%d %d\n",n1,n2);
int num1[20];
int num2[20];
for(int i=0;i<n1;i++){
if(string1[i]>=65&&string2[i]<=90){
num1[i]=string1[i]-'A'+10;
}
else{
num1[i]=string1[i]-'0';
}
}
for(int i=0;i<n2;i++){
if(string2[i]>=65&&string2[i]<=90){
num2[i]=string2[i]-'A'+10;
}
else{
num2[i]=string2[i]-48;
}
}
/* for(int i=0;i<n1;i++){
printf("%d ",num1[i]);
}
printf("\n");
for(int i=0;i<n2;i++){
printf("%d ",num2[i]);
}
printf("\n");
*/
long long sum1=0;
for(int i=0;i<n1;i++){
sum1=sum1+num1[i]*pow(base,n1-i-1);
}
// printf("%d",sum1);
long long sum2=0;
for(int i=0;i<n2;i++){
sum2=sum2+num2[i]*pow(base,n2-i-1);
}
// printf(" %d\n",sum2);
long long sum=0;
sum=sum1+sum2;
long long r=0;
int ans[20];
if(sum==0){
printf("0");
}
else{
while(sum!=0){
ans[r]=sum%base;
sum=sum/base;
r++;
}
for(int i=r-1;i>-1;i--){
if(ans[i]>9){
printf("%c",'A'+ans[i]-10);
}
else{
printf("%d",ans[i]);
}
}
}
return 0;
}