Submission

Status:

P--PP-P--

Subtask/Task Score:

48/100

Score: 48

User: Trin1506

Problemset: บวกเลขฐาน

Language: cpp

Time: 0.002 second

Submitted On: 2025-10-09 20:53:58

#include <bits/stdc++.h>
using namespace std;
int main(){
    int base;
    string num1;
    string num2;
    string sums,rev="";
    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,num2.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;
        
    }
    while(sum>0){
        if(sum%base>=10&&sum%base<=15) sums+=char(sum%base+55);
        else sums+=(sum%base)+'0';
        sum/=base;
    }
    for(int i=0;i<sums.size();i++){
        rev+=sums[sums.size()-1-i];
    }
    cout << rev ;
}