Submission

Status:

PPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: kinzap

Problemset: บวกเลขฐาน

Language: cpp

Time: 0.002 second

Submitted On: 2025-10-12 11:05:45

#include <iostream>
#include <string>
#include <math.h>
using namespace std;

string n1,n2,ans,num;
char h;
int sum,b,p,q,a;

int main(){
    cin >> b >> n1 >> n2;
    for(int i = 0;i<n1.length();i++){
        if(n1[n1.length()-i-1]>=65){
            a=n1[n1.length()-i-1]-'A'+10;
        }
        else {
            a=n1[n1.length()-i-1]-'0';
        }
        p+=pow(b,i)*a;
    }
    for(int i = 0;i<n2.length();i++){
        if(n2[n2.length()-i-1]>=65){
            a=n2[n2.length()-i-1]-'A'+10;
        }
        else {
            a=n2[n2.length()-i-1]-'0';
        }
        q+=pow(b,i)*a;
    }
    sum = p+q;
    while(sum>0){
        if(sum%b<10){
            a= sum%b;
            num = to_string(a);
            ans=num+ans;
        }
        else{
            a= sum%b;
            h =  'A' + (a-10);
            ans=h+ans;
        }
        sum/=b;
    }
    if(ans.length()==0){
        cout << "0"
;    }
    cout  <<ans;


}