Submission

Status:

PPPPPPP-P

Subtask/Task Score:

96/100

Score: 96

User: uraniumconsumer

Problemset: บวกเลขฐาน

Language: cpp

Time: 0.004 second

Submitted On: 2026-10-03 15:00:03

#include <bits/stdc++.h>
using namespace std;

int main(){
    int base;
    cin >> base;
    string num1;
    cin >> num1;
    string num2;
    cin >> num2;
    int num1base = 0;
    int num2base = 0;
    string hexchar = "ABCDEF";


        
    for(int i = 0; i < num1.length(); i++){
            int num3 = num1[i] - '0';
        for(int j = 0; j < hexchar.length(); j++){
            if(num1[i] == hexchar[j]){
                num3 = 10 + j;
            }
        }
        num1base += num3 * pow(base, num1.length()- i - 1);
    }
    for(int i = 0; i < num2.length(); i++){
            int num3 = num2[i] - '0';
        for(int j = 0; j < hexchar.length(); j++){
            if(num2[i] == hexchar[j]){
                num3 = 10 + j;
            }
        }
        num2base += num3 * pow(base, num2.length()- i - 1);
    }

    int sum = num1base + num2base;
    string finalsum = "";
    while(sum > 0){
        if(sum%base >= 10){
            finalsum = hexchar[sum%base - 10] + finalsum;
            sum = sum/base;
        }
        else{
            string rem = to_string(sum%base);
            finalsum = rem + finalsum;
            sum = sum/base;
        }
    }
    cout << finalsum;
}