浙大ACM题在提交OJ以后出现Segmentation Fault,请各路大神看看问题在哪
#include<stdio.h>int main()
{int n,z,s[101],count,set[10][100],p[10],x,y,sum,pt,i,j;
float average;
scanf("%d",&n);
for(z=0;z<n;z++)
{for(i=1;i<101;i++) s[i]=0;
count=1;
scanf("%d %d %d %d %d %d",&set[1][0],&set[1][1],&set[1][2],&set[1][3],&set[1][4],&set[1][5]);
p[1]=5;
for(i=0;i<6;i++) s[set[1][i]]=1;
while(1)
{pt=0;
for(i=1;i<=count/2+1;i++)
{j=count-i+1;
for(x=0;x<=p[i];x++)
for(y=0;y<=p[j];y++)
{sum=set[i][x]-set[j][y];
if(sum<0) sum=-sum;
if(s[sum]==0)
{s[sum]=count+1;
set[count+1][pt]=sum;
pt++;
}
}
}
for(i=1;i<=count/2+1;i++)
{j=count-i+1;
for(x=0;x<=p[i];x++)
for(y=0;y<=p[j];y++)
{sum=set[i][x]+set[j][y];
if(sum>100) continue;
if(s[sum]==0)
{s[sum]=count+1;
set[count+1][pt]=sum;
pt++;
}
}
}
count++;
p[count]=pt-1;
sum=0;
for(i=1;i<count+1;i++)
sum=sum+p[i]+1;
if(sum==100) break;
}
sum=0;
for(i=1;i<101;i++)
sum=sum+s[i];
average=sum*1.0/100;
printf("%.2f %d\n",average, count);
}
return 0;
}
我在dev-c++里编的,运行了能得出正确结果,交了就是AC不了,求指点,题号是1558
[ 本帖最后由 jackjlc 于 2012-3-4 10:35 编辑 ]