Submission

Status:

P--PP-P--

Subtask/Task Score:

48/100

Score: 48

User: 38408

Problemset: บวกเลขฐาน

Language: cpp

Time: 0.004 second

Submitted On: 2026-10-05 18:48:09

#include<bits/stdc++.h>
using namespace std;
int main(){
    int base = 0;
    string am ;
    string a,b;
    int a1 = 0;
    int b1 = 0;
    int answer = 0;
    cin >> base >> a >> b;
    for (int i = a.length()-1; i >= 0; i--)
    {
        if(a[i]>'9'){
            a1 +=  (a[i]-'A'+10)*pow(base,a.length()-1-i);
        }else{
            a1 +=  (a[i]-'0')*pow(base,a.length()-1-i);            
        }
    }
    for (int i = a.length()-1; i >= 0; i--)
    {
        if(b[i]>'9'){
            b1 +=  (b[i]-'A'+10)*pow(base,b.length()-1-i);
        }else{
            b1 +=  (b[i]-'0')*pow(base,b.length()-1-i);            
        }
    }
    answer = a1+b1;
    while (answer>0)
    {
        if(answer%base>9){
            am += (char)(answer%base+'A'-10);
        }else{
            am+= (char)(answer%base+'0');
        }
        answer/=base;
    }
    reverse(am.begin(),am.end());
    if(a.empty())cout<<"0";
    else cout <<am;
    return 0;

}