提交时间:2024-08-19 17:24:45

运行 ID: 167775

#include<bits/stdc++.h> using namespace std; int main(){ int n; int a[520],b[520],c[520]; cin >> n; string A,B; cin >> A >> B; int lena=A.size(),lenb=B.size(),len=max(lena,lenb); for(int i=0;i<lena;i++){ if(A[i]>='0'&&A[i]<='9') a[i]=A[i]-'0'; else a[i]=A[i]-55; } for(int i=0;i<lenb;i++){ if(B[i]>='0'&&B[i]<='9') b[i]=B[i]-'0'; else b[i]=B[i]-55; } for(int i=0;i<len;i++){ c[i]=a[i]+b[i]; } for(int i=len-2;i>=0;i--){ if(c[i+1]>=n){ c[i]+=c[i+1]/n; c[i+1]%=n; } } int tail=0; if(c[0]>=n){ cout << c[0]/n; c[0]%=n; } for(int i=0;i<len;i++){ if(c[i]==0) tail++; else break; } for(int i=tail;i<len;i++){ if(c[i]<=10) cout << c[i]; else cout << char(c[i]+55); } return 0; }