蓝桥杯备考: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;
}
相关推荐
零售ERP菜鸟14 小时前
范式革命:从“信息化”到“数字化”的本质跃迁
大数据·人工智能·职场和发展·创业创新·学习方法·业界资讯
网络安全-杰克16 小时前
2026面试自动化测试面试题【含答案】
自动化测试·软件测试·面试·职场和发展
努力学算法的蒟蒻17 小时前
day79(2.7)——leetcode面试经典150
算法·leetcode·职场和发展
CodeSheep程序羊17 小时前
拼多多春节加班工资曝光,没几个敢给这个数的。
java·c语言·开发语言·c++·python·程序人生·职场和发展
学历真的很重要18 小时前
【系统架构师】第二章 操作系统知识 - 第二部分:进程与线程(补充版)
学习·职场和发展·系统架构·系统架构师
hqyjzsb19 小时前
盲目用AI提效?当心陷入“工具奴”陷阱,效率不增反降
人工智能·学习·职场和发展·创业创新·学习方法·业界资讯·远程工作
仟濹19 小时前
算法打卡 day1 (2026-02-06 周四) | 算法: DFS | 1_卡码网98 可达路径 | 2_力扣797_所有可能的路径
算法·leetcode·深度优先
仟濹20 小时前
算法打卡day2 (2026-02-07 周五) | 算法: DFS | 3_卡码网99_计数孤岛_DFS
算法·深度优先
YuTaoShao20 小时前
【LeetCode 每日一题】1653. 使字符串平衡的最少删除次数——(解法一)前后缀分解
算法·leetcode·职场和发展
VT.馒头20 小时前
【力扣】2727. 判断对象是否为空
javascript·数据结构·算法·leetcode·职场和发展