#include<cstdio>
using namespace std;
int vis[10100],pri[10010],num,n;
void init(){
num=0;
for(int i=2;i<=10010;i++){
if(!vis[i]){
pri[num++]=i;
for(int j = i + i;j <= 10010;j += i) vis[j]=1;
}
}
}
int main(){
init();
while(scanf("%d",&n) == 1 && n){
int l=0,r=0,sum=0,res=0;
while(l<=r){
if(sum < n ) {
if(pri[r] > n)
break;
sum += pri[r];
r++;
}
else if(sum >= n) {
sum -= pri[l];
l++;
}
if(sum == n) res++;
}
printf("%d\n",res);
}
}
uva 1210 数学
最新推荐文章于 2019-08-09 13:17:00 发布