• 首先来看题干,由于懒得写 篇幅原因,题干在这里神秘的传送门
  • 这道题是很明显的暴力我不会最优解
  • 大体思路如下:
    1.看数据,20以内,明显搜索
    2.从前往后,每一个数都只有两个状态,加入到组合中或者不加
    3.判断素数时可以用sqrt()函数来优化
    4.码递归代码
  • 注意
    1.题干中问的是组合方式,所以同一个数可能有多种组合
    2.组合的结果可能是1,所以在判断素数的时候要特判1
  • 最后上代码 100分
#include<bits/stdc++.h>
using namespace std;
int n,k,a[101],b[101],sum,ans;
inline void pd(){if(sum==1) return; //特判1for(int i=2;i<=sqrt(sum);i++) //sqrt函数优化if(sum%i==0) return;ans++;    //总组合数加一return;
}
inline void jqsh(int x,int y,int z){x++; //往后寻找if(y==k){ //找够了k个数sum=z;pd();return;}if(x>n) return;//寻找范围超出了读入的数组jqsh(x,y+1,z+a[x]); //加入到组合中jqsh(x,y,z); //不加入return;
}
int main(){scanf("%d %d",&n,&k);for(int i=1;i<=n;i++)scanf("%d",&a[i]);jqsh(0,0,0); //从零开始寻找printf("%d\n",ans);return 0;
}

1919:【02NOIP普及组】选数相关推荐

  1. 信息学奥赛一本通 1919:【02NOIP普及组】选数 | 洛谷 P1036 [NOIP2002 普及组] 选数

    [题目链接] ybt 1919:[02NOIP普及组]选数 洛谷 P1036 [NOIP2002 普及组] 选数 [题目考点] 1.排列组合 2.深搜(子集树) 3.质数 [解题思路] 深搜(子集树) ...

  2. 洛谷 P1036 [NOIP2002 普及组] 选数(DFS)

    题目描述 已知 n 个整数 x1,x2,-,xnx_1,x_2,-,x_nx1​,x2​,-,xn​,以及1个整数k(k<nk<nk<n).从n个整数中任选k个整数相加,可分别得到一 ...

  3. [NOIP2002 普及组] 选数 dfs筛素数

    突然想做个题 n个数 选k个 k个数的和为素数 这种组合一共多少个 end #include<bits/stdc++.h>using namespace std; typedef long ...

  4. 洛谷----P1036 [NOIP2002 普及组] 选数

    题目描述 已知 nn 个整数  x1​,x2​,⋯,xn​,以及  1 个整数 k(k<n).从 n 个整数中任选 k 个整数相加,可分别得到一系列的和.例如当 n=4,k=3,4 个整数分别为 ...

  5. P1036 [NOIP2002 普及组] 选数

    原题:https://www.luogu.com.cn/problem/P1036 深度优先搜索找到排列,然后用一个求质数函数返回1和0,用一个sum在循环中累加,搜索结束返回sum,正好就是结果. ...

  6. 【NOIP普及组】1919:【02NOIP普及组】选数

    [信奥赛一本通]1919:[02NOIP普及组]选数 1.[题目描述] 2.[代码] 1.[题目描述] [题目描述] 已知n个整数x1,x2,--xn,以及一个整数K(K<n).从n个整数中任选 ...

  7. 信息学奥赛一本通 1314:【例3.6】过河卒(Noip2002) | 1921:【02NOIP普及组】过河卒 | 洛谷 P1002 [NOIP2002 普及组] 过河卒

    [题目链接] ybt 1314:[例3.6]过河卒(Noip2002) ybt 1921:[02NOIP普及组]过河卒 洛谷 P1002 [NOIP2002 普及组] 过河卒 [题目考点] 1. 坐标 ...

  8. 信息学奥赛一本通 1316:【例4.6】数的计数(Noip2001) | 1914:【01NOIP普及组】数的计数 | 洛谷 P1028 [NOIP2001 普及组] 数的计算

    [题目链接] ybt 1316:[例4.6]数的计数(Noip2001) ybt 1914:[01NOIP普及组]数的计数 洛谷 P1028 [NOIP2001 普及组] 数的计算 [题目考点] 1. ...

  9. 信息学奥赛一本通 1087:级数求和 | 1918:【02NOIP普及组】级数求和 | OpenJudge NOI 1.5 27

    [题目链接] ybt 1087:级数求和 ybt 1918:[02NOIP普及组]级数求和 OpenJudge NOI 1.5 27:级数求和 [题目考点] 1. 循环.求和 [解题思路] 设加和变量 ...

最新文章

  1. POJ 2352 Stars (线段树)
  2. DAY3-Flask项目
  3. Nacos支持配置的动态更新
  4. 【EasyUI tree】Python 异步菜单树的实现
  5. 如果生活中没有数学,那么。。。
  6. 突破极限–如何将AeroGear Unified Push用于Java EE和Node.js
  7. “10亿赌约”董明珠赢了!格力电器2018年总收入超2000亿
  8. XMLReader—一个可以读取XML文件的java类
  9. 美股涨跌幅限制是多少?
  10. 微服务最佳实践 【已翻译100%】
  11. 在myql sqlserver 快速找到带有关键字的表
  12. nginx 1.12基础知识
  13. 管鲍计算机教室管理系统,管鲍多媒体电子教室
  14. linux jconsole 监控jvm,JVM监测分析JConsole
  15. MYSQL学习心得6
  16. oracle:sql 判断时间段重叠
  17. 用c语言实现cos x 函数
  18. java操作MangoDB的聚合Aggregation用法-分页查询
  19. 拉链表的详细实现过程(好文点赞收藏!!)
  20. uni-app - 城市选择索引列表 / 通过 A-Z 排序的城市列表(uview 组件库 IndexList 索引列表)

热门文章

  1. win2016开启ntp_WinServer 2016域控设置NTP服务器
  2. Python中用PyPDF2拆分pdf提取页面
  3. 2018年最新从PayPal提现美金的方法(实战教程)!
  4. 如何做好跨境电商,先了解3个基本观念
  5. html的自定义按钮,「HTML+CSS」--自定义按钮样式【003】
  6. 微信点餐系统要服务器吗,微信点餐系统,钉钉点餐系统
  7. 【百练】护林员盖房子
  8. (译)使用Go语言从零编写PoS区块链
  9. 华为项目管理金种子培训教材(资料下载)
  10. 看宗萨蒋扬清者仁波切写的《正见:佛陀的证悟》的书评