Submission

Status:

PPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: Trin1506

Problemset: บวกเลขฐาน

Language: cpp

Time: 0.002 second

Submitted On: 2025-10-09 21:01:05

#include <bits/stdc++.h>
using namespace std;
int main(){
    int base;
    string num1;
    string num2;
    string sums,rev="";
    long long int sum=0,value,power;
    cin >> base >> num1 >> num2;
    for(int i=num1.size()-1;i>=0;i--){
        if (num1[i] >= 'A' && num1[i] <= 'F') value = num1[i] - 'A' + 10;
        else value = num1[i]-'0';
        power = pow(base,num1.size()-1-i);
        sum+=value*power;
    }
    for(int i=num2.size()-1;i>=0;i--){
        if (num2[i] >= 'A' && num2[i] <= 'F') value = num2[i] - 'A' + 10;
        else value = num2[i]-'0';
        power = pow(base,num2.size()-1-i);
        sum+=value*power;
        
    }
    if(sum==0){
        cout << '0';
        return 0;
    }
    while(sum>0){
        if(sum%base>=10&&sum%base<=15) sums+=char(sum%base+55);
        else sums+=(sum%base)+'0';
        sum/=base;
    }
    reverse(sums.begin(),sums.end());
    cout << sums;
}