Submission

Status:

PPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: bestisyis...programming

Problemset: บวกเลขฐาน

Language: cpp

Time: 0.005 second

Submitted On: 2026-10-06 19:22:15

#include <iostream>
#include <string>
#include <cmath>
#include <algorithm>
using namespace std;

int tobase10(string x,int base){
	int sum=0;
	reverse(x.begin(),x.end());
	for(int i=0;i<x.length();i++){
		if(x[i]>='0' && x[i]<='9')
			sum+=(x[i]-'0')*pow(base,i);
		else sum+=(x[i]-'A'+10)*pow(base,i); 
	}
	return sum;
}

string tentobase(int num,int base){
		string res;
		if(num==0) return "0";
		while(num){
			if(num%base<10){
				res+=(char)(num%base+'0');
			}
			else res+=(char)(num%base + 'A'-10);
			num = num/base;
		}
		reverse(res.begin(), res.end());
		return res;
}

int main(){
	int base;
	cin >> base;
	string n1,n2;
	cin >> n1 >> n2;
	int num = tobase10(n1,base) + tobase10(n2,base);
	cout << tentobase(num,base);
	
}