这...感觉应该没毛病啊
求大佬指点一下
#include<iostream>
using namespace std;
const int N=22;
int a[N],b[N];
int p[N]={2,3,5,7,11,13,17,23};
/*
10,6,4,2,1+9,5,3,2,1
*/
void a_b_sum(int len1,int len2)
{
int len=max(len1,len2);
int sum[N]={0};
int l=0,t=0;
for(int i=len-1;i>=0;i--)
{
sum[l]=a[i]+b[i]+t;
t=sum[l]/p[l];
sum[l]%=p[l];
l++;
}
if(t)
sum[l++]=t;
for(int i=l-1;i>=0;i--)
if(i!=0)
cout<<sum[i]<<",";
else
cout<<sum[i];
}
int main()
{
string str;
int sum=0;
int len1=0,len2=0;
cin>>str;
int x=str.find("+");
for(int i=0;i<x;i++)
{
if(str[i]!=',')
{
sum=sum*10+str[i]-'0';
}
else
{
a[len1++]=sum;
sum=0;
}
}
a[len1++]=sum;
sum=0;
for(int i=x+1;i<=str.length()-1;i++)
{
if(str[i]!=',')
{
sum=sum*10+str[i]-'0';
}
else
{
b[len2++]=sum;
sum=0;
}
}
b[len2++]=sum;
a_b_sum(len1,len2);
/*cout<<endl;
for(int i=0;i<=max(len1,len2)-1;i++)
cout<<p[i]<<" ";
cout<<endl;
for(int i=len1-1;i>=0;i--)
cout<<a[i]<<" ";
cout<<endl;
for(int i=len2-1;i>=0;i--)
cout<<b[i]<<" ";*/
return 0;
}