标签:pac ram gif limit width tween line present table
http://poj.org/problem?id=2739
Time Limit: 1000MS | Memory Limit: 65536K | |
Total Submissions: 28929 | Accepted: 15525 |
Description
Input
Output
Sample Input
2 3 17 41 20 666 12 53 0
Sample Output
1 1 2 3 0 0 1 2
Source
1 #include<iostream> 2 #include<cstring> 3 #include<algorithm> 4 #include<cmath> 5 #include<string> 6 #include<vector> 7 #include<cstdio> 8 #include<queue> 9 #include<stack> 10 #define PI acos(-1.0) 11 #define eps 1e-9 12 using namespace std; 13 int prime[150001];//存素数 14 bool vis[150001];//保证不做素数的倍数 15 void dabiao(int n){ 16 int cnt = 0; 17 memset(vis, false, sizeof(vis));//初始化 18 memset(prime, 0, sizeof(prime)); 19 for(int i = 2; i <= n; i++) 20 { 21 if(!vis[i])//不是目前找到的素数的倍数 22 prime[cnt++] = i;//找到素数~ 23 for(int j = 0; j<cnt && i*prime[j]<=n; j++) 24 { 25 vis[i*prime[j]] = true;//找到的素数的倍数不访问 26 if(i % prime[j] == 0) break;//关键!!!! 27 } 28 } 29 } 30 31 int main(){ 32 33 dabiao(105000); 34 int n; 35 while(~scanf("%d",&n)){ 36 if(!n) break; 37 int L=0,R=0; 38 int ans=0; 39 int sum=0; 40 int pos=upper_bound(prime,prime+10005,n)-prime; 41 while(L<=R){ 42 43 if(ans<=n&&R<pos){ 44 ans+=prime[R++]; 45 } 46 else if(ans>n||R==pos){ 47 ans-=prime[L++]; 48 } 49 if(ans==n){ 50 sum++; 51 } 52 } 53 printf("%d\n",sum); 54 } 55 56 57 }
Sum of Consecutive Prime Numbers
标签:pac ram gif limit width tween line present table
原文地址:https://www.cnblogs.com/Fighting-sh/p/10041395.html