www
查看原帖
www
1178004
禹天钧2016楼主2024/8/31 15:53
#include <bits/stdc++.h>
using namespace std;
int n,a1[1000000],b1[1000000],c[1000000];
string a,b;
int s(char q) {
	if('0'<=q&&q<='9') return q-'0';
	else return 10+(q-'A');
}
int main() {
	cin>>n;
	cin>>a>>b;
	int len=max(a.size(),b.size());
	for (int i=a.size()-1,j=1; i>=0; i--,j++) a1[j]=s(a[i]);
	for (int i=b.size()-1,j=1; i>=0; i--,j++) b1[j]=s(b[i]);
	for (int i=1; i<=len; i++) {
		c[i]+=a1[i]+b1[i];
		c[i+1]=c[i]/n;
		c[i]%=n;
	}
	if (c[len+1])len++;
	if(n<10) {
		for(len; len>=1; len--) {
			if(c[len]>(n-1)) {
				c[len-1]+=c[len]-(n-1);
				cout<<c[len]-(n-1);
			} else {
				cout<<c[len];
			}
		}
	} else {
		for(len; len>=1; len--) {
			cout<<c[len];
			
		}
	}
	return 0;
}
2024/8/31 15:53
加载中...