Submission

Status:

PPPPPPP-P

Subtask/Task Score:

96/100

Score: 96

User: Catpao

Problemset: บวกเลขฐาน

Language: cpp

Time: 0.003 second

Submitted On: 2025-10-28 20:07:49

#include<bits/stdc++.h>
using namespace std;
int main()
{
	unsigned long long b,n;
	cin>>b;
	string n1,n2;
	cin>>n1;
	cin>>n2;
	unsigned long long sum1 = 0,sum2 = 0;
	vector<unsigned long long> d; 
	int r1 = n1.size(),r2 = n2.size(),a;
	for(int i=0;i<n1.size();i++){
		if(n1[i] >= 'A'){
			unsigned long long e = n1[i];
			a = e - 55;
		}
		else{
			a = n1[i] - '0';
		}
		unsigned long long c = r1 - i - 1;
		sum1 = sum1 + a * pow(b,c);
	}
	for(int i=0;i<n2.size();i++){
		if(n2[i] >= 'A'){
			unsigned long long e = n2[i];
			a = e - 55;
		}
		else{
			a = n2[i] - '0';
		}
		unsigned long long c = r2 - i - 1;
		sum2 = sum2 + a * pow(b,c);
	}
	sum1 = sum1 + sum2;
	while(sum1 != 0){
		d.push_back(sum1%b);
		sum1 = sum1/b;
	}
	for(int i=d.size()-1;i>=0;i--){
		if(d[i] >= 10){
			cout<<char(d[i] + 55);
		}
		else{
			cout<<d[i];
		}
	}
}