codevs 1008 选数 dfs
2017-11-10 22:29
169 查看
题目:codevs1008
思路:就是dfs(深度优先搜索),挺简单的,第一次超时因为素数的判断放法错了~>
思路:就是dfs(深度优先搜索),挺简单的,第一次超时因为素数的判断放法错了~>
#include<iostream> #include<algorithm> #include<math.h> using namespace std; int a[25]; int n ,k , count_t = 0; bool isprime(int t) { for(int i = 2;i <= sqrt(t)+1;i++)//第一次这里写成i <= t/2;导致一直超时~ { if(t%i == 0) return false; } return true; } void dfs(int x,int num,int sum) { if(num == k && isprime(sum)) { count_t++; //cout << sum << endl; } if(num > k) return; for(int i = x+1;i < n;i++) { dfs(i,num+1,sum + a[i]); // sum = 0; } } int main() { cin >> n >> k; for(int i = 0;i < n;i++) { cin >> a[i]; } int sum; for(int i = 0; i < n-k+1;i++) { sum = 0; dfs(i,1,sum + a[i]); } cout << count_t; return 0; }
相关文章推荐
- codevs 1008 选数(dfs)
- codevs 1066 引水入城(DFS+DP)
- (DFS)codevs1004-四子连棋
- 【Codevs1228】苹果树(dfs序+树状数组)
- 【DFS&&搜索剪枝】CODE[VS] 3498 小木棍
- codevs 5570 Xor(dfs)
- CODEVS 1018 单词接龙(DFS)
- CODE[VS] 1008 选数
- 【基础练习】【搜索】codevs1008 选数题解
- codevs1008
- codevs1008
- codevs1017 乘积最大 dfs 也可以dp
- 【DFS】CODE[VS] 1031 质数环(刷题记录)
- 【DFS】CODE[VS] 1535 封锁阳光大学(二分图DFS染色)
- Codevs 1536 海战 (DFS || BFS)+判断
- 【vijos P1914】【codevs 3904】[NOIP2014 普及组T4]子矩阵(dfs+状压dp)
- [codevs1047]邮票面值设计 dp+dfs
- CODE[VS] 1008 选数
- codevs1669(dfs)子集和目标值
- Codevs 1018 单词接龙 (DFS)