Submission

Status:

PPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: NeolNWza007

Problemset: บวกเลขฐาน

Language: cpp

Time: 0.002 second

Submitted On: 2025-10-13 21:50:57

#include<bits/stdc++.h>
using namespace std;
int change(string num,int base){
    int sum=0;
    for(int i=0; i<num.length(); i++){
        int hex;
        if(num[i]>='A'&&num[i]<='Z'){
            hex = num[i]-'A'+10;
        }else{
            hex = num[i]-'0';
        }
        sum+=hex*pow(base,num.length()-i-1);
    }
    return sum;
}
void back(int n,int b){
    vector<char> arr;
    while(true){

        int m=n%b;
        if(m>=10){
            arr.push_back(m-10+'A');
        }else{
            arr.push_back(m+'0');
        }
        n=n/b;
        if(n==0){
            break;
        }
    }
    for(int i=arr.size()-1; i>=0; i--){
        cout<<arr[i];
    }
}
int main(){
    int n;cin>>n;
    string n1,n2;cin>>n1>>n2;
    int cn1=change(n1,n);
    int cn2=change(n2,n);
    //cout<<cn1<<" "<<cn2;
    int diff=cn1+cn2;
    back(diff,n);
    
}