蓝桥杯备考:DFS之选数问题

cpp 复制代码
#include <iostream>
#include <vector>
using namespace std;
int n,k;
const int N = 30;
int a[N];
int path,cnt;
bool isprime(int x)
{
	if(x<=1) return false;
	else
	{
		for(int i = 2;i<x;i++)
		{
			if(x%i == 0)
			return false;
		}
		return true;
	}
}
void dfs(int pos,int begin)
{
	if(pos>k)
	{
		if(isprime(path))
		cnt++;
		return;
	}
	for(int i = begin;i<=n;i++)
	{
		path+=a[i];
		dfs(pos+1,i+1);
		path-=a[i];
	}
}
int main()
{
	cin >> n >> k;
	for(int i = 1;i<=n;i++)
	{
		cin >> a[i];
	}
	dfs(1,1);
	cout << cnt << endl;
	
	
	return 0;
}
相关推荐
代码雕刻家4 小时前
2.4.蓝桥杯-分巧克力
算法·蓝桥杯
VT.馒头8 小时前
【力扣】2625. 扁平化嵌套数组
前端·javascript·算法·leetcode·职场和发展·typescript
毅炼9 小时前
hot100打卡——day17
java·数据结构·算法·leetcode·深度优先
草履虫建模11 小时前
力扣算法 121. 买卖股票的最佳时机
算法·leetcode·职场和发展·贪心算法·动态规划·一次遍历
养军博客11 小时前
C语言五天速成(可用于蓝桥杯备考 难度中等偏下)
c语言·算法·蓝桥杯
爱尔兰极光11 小时前
LeetCode--有序数组的平方
算法·leetcode·职场和发展
闻缺陷则喜何志丹11 小时前
【栈 递归】P8650 [蓝桥杯 2017 省 A] 正则问题|普及+
c++·数学·蓝桥杯·递归·
iAkuya11 小时前
(leetcode)力扣100 58组合总和(回溯)
算法·leetcode·职场和发展
Warren9811 小时前
Pytest Fixture 作用域详解:Function、Class、Module、Session 怎么选
面试·职场和发展·单元测试·pytest·pip·模块测试·jira
爱尔兰极光11 小时前
LeetCode--移除元素
算法·leetcode·职场和发展