#include
(此处略>40000个的字,就是个2-10000之间的素数数组)
-
int main()
-
{
-
intnum,i,count,j,n;
-
while(scanf("%d",&num)==1&&num)
-
{
-
count=0;
-
for(i=0;i<1230;i++)
-
{
-
if(num<=prime[i])
-
{
-
break;
-
}
-
}
-
if(num==prime[i])
-
{
-
count++;
-
}
-
while(i>0)
-
{
-
n=num;
-
j=i--;
-
while(j>0&&(n-prime[j-1])>=0)
-
{
-
n-=prime[j-1];
-
if(n<0)
-
{
-
break;
-
}
-
else if(n==0)
-
{
-
count++;
-
}
-
j--;
-
}
-
}
-
printf("%dn",count);
-
}
-
return0;
-
}
-
很悲剧滴贡献了一次WA,原因在于我自己测试了10000,9999这样的数据,看到输出是1,头一下就懵了,赶紧在循环之前加了个条件
-
if(num>9973)
-
{
-
printf("0n");
2011-03-12 11:58 发表于百度空间,今搬至CU。
阅读(1292) | 评论(0) | 转发(0) |