#includeint n; int arr[40]; int count=0; int isprime(int n) { int temp=1; int i; for(i=2;i*i<=n;i++) { if(n%i==0) { temp=0; } } return temp; } void Find(int sum,int j,int k)//从数组坐标为j及以后的范围里面选k个数 { int i; if(k==0) { if(isprime(sum)) { count++; return ; } } else { for(i=j;i<=n-k;i++)//前面至多遍历n-k个,以临界时依然可以选出k个数 { Find(sum+arr[i],i+1,k-1);//选了arr[i]这个数,从数组坐标为i+1及以后的范围里面选k-1个数 } } } int main() { int i; int k; scanf("%d%d",&n,&k); for(i=0;i 欢迎分享,转载请注明来源:内存溢出
P1036 [NOIP2002 普及组] 选数
赞
(0)
打赏
微信扫一扫
支付宝扫一扫
C++学习 1: 两个无符号数相减
下一篇
2022-12-17
评论列表(0条)