Submission

Status:

PPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: anonymous

Problemset: บวกเลขฐาน

Language: cpp

Time: 0.003 second

Submitted On: 2026-10-07 09:43:29

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

string change(int n, int base) {
    if (n == 0) return "0";
    
    string result = "";
    string chars = "0123456789ABCDEF";
    
    while (n > 0) {
        result += chars[n % base];
        n /= base;
    }
    
    reverse(result.begin(), result.end());
	cout << result;
    return result;
}

int main(){
	int base; cin >> base;
	string n1,n2; cin >> n1 >> n2;
	int s1=0,s2=0;
	string hexchar = "ABCDEF";
	
	for(int i=0;i<n1.length();i++){
		int n = n1[i] - '0';
		for(int j=0;j<hexchar.length();j++){
			if(n1[i] == hexchar[j])n = 10 + j;
		}
		s1+= n*pow(base , n1.length()-i-1);
		
	}
	for(int i=0;i<n2.length();i++){
        int n = n2[i] - '0';
        for(int j=0;j<hexchar.length();j++){
            if(n2[i] == hexchar[j]) n = 10 + j;
        }
        s2+= n*pow(base , n2.length() -i - 1);
    }

    int sum = s1 + s2 ;
	
    if(sum == 0) {cout << "0"; return 0;}

	
	change(sum,base);
}