Submission

Status:

PPPPPPP-P

Subtask/Task Score:

96/100

Score: 96

User: letdown

Problemset: บวกเลขฐาน

Language: cpp

Time: 0.003 second

Submitted On: 2025-10-08 17:36:56

#include <iostream>
#include <math.h>
#include <string.h>

using namespace std;

int basetodec(int base, string s) {
    int dec = 0, digit, l = s.length();
    for (int i = 0; i < l; i++) {
        char cur = s[l-i-1];
        if (cur <= '9' && cur >= '0') digit = cur - '0';
        else digit = cur - 'A' + 10;
        dec += digit * pow(base, i);
    }
    return dec;
}

int main() {
    int base, ansdec;
    string a, b, ans;
    cin >> base >> a >> b;
    
    ansdec = basetodec(base, a) + basetodec(base, b);

    int n = ansdec;
    while (n > 0)
    {
        int digit = n % base;
        if (digit <= 9 && digit >= 0) ans += char(digit + '0');
        else ans += char(digit - 10 + 'A');
        n /= base;
    }
    for (int i = ans.length() - 1; i >= 0; i--) cout << ans[i];
}