记录编号 18515 评测结果 AAAAAAAAAA
题目名称 [Japan2005] 连续素数和 最终得分 100
用户昵称 Gravatar.Xmz 是否通过 通过
代码语言 C++ 运行时间 0.145 s
提交时间 2010-09-15 19:36:20 内存使用 0.37 MiB
显示代码纯文本
#include <iostream>
#include <cstring>
#include <cmath>
#include <cstdlib>
#include <cstdio>

using namespace std;

int su[10001];
int h;
int S[10001];
int f[10001];
int main()
{
	freopen("conprime.in","r",stdin);
	freopen("conprime.out","w",stdout);
	for (int i=2;i<=10000;i++)
	{
		int t=(int)sqrtf((float)i);
		int j;
		for (j=2;j<=t;j++)
		if (i%j==0) break;
		if (j>t) 
		{
			su[++h]=i;
			S[h]=S[h-1]+su[h];
		}
	}
	
	for (int i=0;i<=h;i++)
	for (int j=i+1;j<=h;j++)
	{
		if (S[j]-S[i]<=10000) f[S[j]-S[i]]+=1;
	}
	
	int t;
	do
	{
		scanf("%d",&t);
		if (!t) break;
		printf("%d\n",f[t]);
	}while (true);
	return 0;
}