1.2.2一个数可以有多少种用连续素数之和表示

来源:互联网 发布:php全栈 编辑:程序博客网 时间:2024/05/07 17:17
#include <iostream>using namespace std;const int maxp=2000,n=10000;int prime[maxp],total=0;bool isprime(int k)//bool函数用来求素数{for(int i=0;i<total;i++)if(k%prime[i]==0)//判断素数的一种方法(用这个数对数组当中所有的 素数 进行取余;return false;return true;}int main(){for(int i=2;i<n;i++)if(isprime(i))prime[total++]=i;//total++是先用后加。此处之前的代码是把2~n之间的素数全部都存储到prime[total]数组中。prime[total]=n+1;int m;cin>>m;while(m){int ans=0;//用于计算个数for(int i=0;prime[i]<=m;i++)//外层循环用来枚举所有的可能性{int cnt=0;//求和for(int j=i;j<total,cnt<m;j++)//内循环用来判断所求和的大小是否符合cnt+=prime[j];if(cnt==m)++ans;}cout<<ans<<endl;cin>>m;}return 0;}

0 0
原创粉丝点击