如题
#include <bits/stdc++.h>
using namespace std;
int a[10001],b[10001],c[10001];
int n;
string add(string la,string lb,int n)
{
string s;
memset(c,0,sizeof(c));
int len1=la.size();
int len2=lb.size();
int len=max(len1,len2);
for(int i=0;i<len1;i++)
{
if(la[len1-i-1]>='a'&&la[len1-i-1]<='z') a[len1-i-1]=la[i]-'a'+10;
else a[len1-i-1]=la[i]-'0';
}
for(int i=0;i<len2;i++)
{
if(lb[len2-i-1]>='a'&&lb[len2-i-1]<='z') b[len2-i-1]=lb[i]-'a'+10;
else b[len2-i-1]=lb[i]-'0';
}
int t=0;
for(int i=0;i<len;i++)
{
t+=a[i]+b[i];
c[i]=t%n;
t/=n;
}
if(t>0) c[len++]=t;
for(int i=len-1;i>=0;i--)
{
if(c[i]>=10) s+=char(c[i]-10+'a');
else s+=c[i]+'0';
}
return s;
}
int main()
{
string a,b;
cin>>n>>a>>b;
cout<<add(a,b,n)<<endl;
return 0;
}