当前位置: 首页 > news >正文

P1036 选数

点击查看代码
#include<bits/stdc++.h>
using namespace std;int n,m;
int a[25];
long long ans;bool prime(int x)
{if(x==1||x!=2&&x%2==0) return false;for(int i=3;i<=x/i;i++) if(x%i==0) return false;return true;
}
//k表示当前已经选的数的个数,s表示当前的和,x表示下一个选择的数字
void dfs(int k,int s,int x)
{if(k==m){if(prime(s)) ans++;return;}//这样就相当于实现了从n个数中选m个数的功能,for循环结束返回,或者到达个数开始返回,并且因为是传值,所以不需要恢复for(int i=x;i<n;i++) dfs(k+1,s+a[i],i+1);
}int main()
{cin>>n>>m;for(int i=0;i<n;i++) cin>>a[i];dfs(0,0,0);cout<<ans<<endl;return 0;
}
核心在于实现了从n个数中选m的功能,for+递归,而且因为是传值所以不用恢复,很精简的实现
http://www.jsqmd.com/news/67614/

相关文章:

  • GIT-01 Fuel Injection Drivebox Injector Tester: Universal Plugs for All Injectors + Frequency Lock
  • 虚拟机 VMware Tools 工具安装失败/缺失的问题
  • AgileConfig-1.11.0 发布:增强的权限管理
  • Windows 10 终止服务,趁微软官方下载通道还没有关闭,现在教大家如何用电脑浏览器下载。
  • CSAPP 存储器层次结构
  • WPS免费版(会员功能永久可用)
  • P1030 求先序序列
  • 2025年真空滚揉机厂家口碑排行:本地用户真实体验分享,市场上专业的滚揉机品牌优质企业盘点及核心优势详细解读
  • 第49天(中等题 数据结构)
  • 谷歌反重力 Google Antigravity 常见问题
  • windows11同时安装mysql8和mysql5.7数据库
  • 2025年午餐肉罐头机优质生产商口碑榜发布,行业内罐头机产品博锐发展迅速,实力雄厚
  • 每日反思(2025年12月8日)
  • JavaEE 和 JavaWeb的关系
  • 倍增
  • pwn入门记录
  • 2025-12-9
  • Maven 下载 Spigot 依赖失败问题排查:Could not find artifact org.spigotmc:spigot-api…
  • 12.8每日总结
  • 2025/12/08 分享
  • frp
  • 深刻理解HTTP和RPC的区别
  • linux 中 socket 文件是什么?和 socket 编程有什么关系?和 TCP/IP 协议栈又有什么关系?
  • 智能座舱的下一站:从“车内大屏”到“全域协同” - 智慧园区
  • 硬件电子知识(基础篇)
  • stable diffusion
  • 每日的小开心
  • 揭秘业务逻辑滥用:API安全中“利用游戏规则”的攻击手法
  • 放弃原容器建立新容器,保存留数据卷且映射
  • CommonUI-学习记录