杭电1230 求大牛指出错误,一直wa...在线等。。。

#include<iostream>usingnamespacestd;intmain(){voidadds(inta[],intb[],intx,inty);inta[... #include<iostream>using namespace std;
int main()
{
void adds(int a[],int b[],int x,int y);
int a[30],b[30],i,lena,lenb;
while(cin>>a[0])
{
lena=1;
while(getchar()==',') cin>>a[lena++];
cin>>b[0];
if(a[0]==0||b[0]==0) break;
lenb=1;
while(getchar()==',') cin>>b[lenb++];
if(lenb>lena) adds(b,a,lenb,lena);
else adds(a,b,lena,lenb);
}
return 0;
}

void adds(int a[],int b[],int x,int y){
int i,j,k;
int d[25]={2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97};
k=0;
for(i=1;i<=y;i++)
{
a[x-i]+=b[y-i]+k;
if(a[x-i]>=d[i-1])
{
k=1;
a[x-i]-=d[i-1];
}
else k=0;
}
j=i;
while(k>0&&j<=x)
{
if(a[x-j]==d[j-1]-1)
{
k=1;
a[x-j]=0;
}
else k=0;
j++;
}
if(k>0) cout<<"1,";
for(i=0;i<x-1;i++) cout<<a[i]<<',';
cout<<a[x-1]<<endl;
}
展开
 我来答
♂凡鸟♂fcb78ab
2013-03-08 · TA获得超过3711个赞
知道小有建树答主
回答量:586
采纳率:100%
帮助的人:607万
展开全部
先给你一个测试数据:0,1,0,1 0,0,1,1
这个过了就差不多了。
来自:求助得到的回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式