蓝桥杯备考: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;
}
相关推荐
黑色的山岗在沉睡11 小时前
LeetCode 3665. 统计镜子反射路径数目
算法·leetcode·职场和发展
楼田莉子15 小时前
C++算法学习专题:前缀和
c++·学习·算法·leetcode·蓝桥杯
YoungHong19921 天前
面试经典150题[019]:最后一个单词的长度(LeetCode 58)
leetcode·面试·职场和发展
测试19982 天前
单元测试到底是什么?该怎么做?
自动化测试·软件测试·python·测试工具·职场和发展·单元测试·测试用例
熬了夜的程序员2 天前
【LeetCode】30. 串联所有单词的子串
算法·leetcode·链表·职场和发展·深度优先
闻缺陷则喜何志丹2 天前
【分治法 BFS 质因数分解】P12255 [蓝桥杯 2024 国 Java B] 园丁|普及+
c++·算法·蓝桥杯·宽度优先·质因数分解·分治法
sssvangen2 天前
宝石组合(蓝桥杯)
算法·蓝桥杯·调和计数法
sssvangen2 天前
数字接龙(dfs)(蓝桥杯)
算法·蓝桥杯·深度优先
独行soc2 天前
2025年渗透测试面试题总结-38(题目+回答)
android·安全·网络安全·面试·职场和发展·渗透测试·求职
睡不醒的kun2 天前
leetcode算法刷题的第二十一天
数据结构·c++·算法·leetcode·职场和发展·回溯算法·回归算法