#include <bits/stdc++.h>
using namespace std;
string a1,b1;
long long a[10005]={},b[10005]={},c[10005]={};
int main()
{
long long lena,lenb,lenc,x,B;
cin>>B;
cin>>a1;
cin>>b1;
lena=a1.size();
lenb=b1.size();
for(long long i=1;i<=lena;i++)
{
if(a[lena-i]<=10&&a[lena-i]>=0)
{
a[i]=a1[lena-i]-'0';
}
else
{
a[i]=a1[lena-i]-'A'+10;
}
}
for(long long i=1;i<=lenb;i++)
{
if(b[lenb-i]<=10&&b[lenb-i]>=0)
{
b[i]=b1[lenb-i]-'0';
}
else
{
b[i]=b1[lenb-i]-'A'+10;
}
}
lenc=1;
while(lenc<=lena&&lenc<=lenb)
{
c[lenc]+=a[lenc]+b[lenc];
if(c[lenc]>=B)
{
c[lenc]=c[lenc]%B;
c[lenc+1]+=1;
}
lenc++;
}
if(c[lenc]==0)
{
lenc--;
}
for(int i=lenc;i>=1;i--)
{
if (c[i]<10) cout<<c[i];
else cout<<(char)(c[i]+'A'-10);
}
return 0;
}
这是代码:
这是数据:
输入:
2
1010001010111101010100000000001101111110
1010000000111010100111101101001011
输出:
10100111110001110100111111011001001