组合数的具体应用可以参考这个例子:https://www.cnblogs.com/FengZeng666/p/10496223.html

下面这段代码可以作为求组合数的固定套路或者公式

 1 #include<iostream>
 2 #include<cstring>
 3
 4 using namespace std;
 5
 6 int sum = 0;
 7 int a[1000];
 8
 9 void dfs(int step, int n, int m)    //从n个数里面选出m个,存入一维数组a
10 {
11     if (step == (m+1))
12     {
13         ++sum;    //组合总数
14         for(int i = 1; i <= m; ++i)
15             cout << a[i] << " " ;    //所有组合
16         cout << endl;
17         return;
18     }
19     else
20     {
21         for (int i = 1; i <= n; i++)
22         {
23             //保证取得的这5个数大小是递增的,避免重复取
24             if (i > a[step - 1])
25             {
26                 a[step] = i;    //使用数组a保存已经取出的数,下标0不用
27                 dfs(step + 1, n, m);
28             }
29         }
30     }
31 }
32
33 int main()
34 {
35     memset(a, 0, sizeof(a));
36     cout << "所有组合为:" << endl;
37     dfs(1, 6, 2);
38     cout << endl;
39     cout << "共有" << sum << "种组合" << endl;
40
41 }

转载于:https://www.cnblogs.com/FengZeng666/p/10496287.html

组合数的简单求法(dfs)相关推荐

  1. POJ 1321-棋盘问题-简单搜索DFS

    POJ 1321-棋盘问题-简单搜索DFS Description 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别.要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编 ...

  2. 三阶齐次线性方程求通解_三阶常系数线性微分方程特解的简单求法

    三阶常系数线性微分方程特解的简单求法 周坚 ; 赵士银 [摘 要] 针对自由项为几类常见类型的三阶常系数非齐次线性微分方程 , 得到了求 此类微分方程的特解公式 , 使求三阶常系数非齐次线性微分方程的 ...

  3. 【DFS】先简单说说DFS分布式存储系统和fastDFS

    先简单说说DFS分布式存储系统和fastDFS 文章目录 先简单说说DFS分布式存储系统和fastDFS DFS分布式存储系统是什么? 传统方式弊端 FastDFS简介 FastDFS整体架构 DFS ...

  4. 逆元的定义用处以及简单求法

    一,逆元的定义 当 ax≡1(modb), x即为 a 在mod b 意义下的逆元. 逆元的数学符号是 inv ,a 在mod b 意义下的逆元记作 inv(a,b).注意不要写反了. 简单来说逆元就 ...

  5. 计蒜客-T1284 夫子云游(简单搜索dfs)

    父子云游 题目链接:https://vjudge.net/problem/%E8%AE%A1%E8%92%9C%E5%AE%A2-T1284 题目描述 改编自猫腻所著的同名小说<将夜>目前 ...

  6. 棋盘问题 简单搜索DFS

    Description 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别.要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子 ...

  7. HDU 1010题解这是一道简单的DFS加回溯题,看懂后就会对递归和回溯有较深刻的理解。...

    1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 char s[7][7]; //将变量 ...

  8. P1460 健康的荷斯坦奶牛 Healthy Holsteins (简单的dfs)

    题目描述 农民JOHN以拥有世界上最健康的奶牛为傲.他知道每种饲料中所包含的牛所需的最低的维他命量是多少.请你帮助农夫喂养他的牛,以保持它们的健康,使喂给牛的饲料的种数最少. 给出牛所需的最低的维他命 ...

  9. poj 1426 Find The Multiple (简单搜索dfs)

    题目: Given a positive integer n, write a program to find out a nonzero multiple m of n whose decimal ...

最新文章

  1. springboot 直接转发调用_springboot-过滤器的页面跳转【重定向与请求转发】-异常报错...
  2. Surf特征提取分析
  3. Java中文件的创建
  4. java中_null和“”的区别详解
  5. sql取得某日期内的数据
  6. 列举python的数据类型_Python的数据类型
  7. [转]MIDI常识20条
  8. selenium操作webdriver(一)
  9. java补码运算代码_计算机原码、补码、反码与java移位运算符(//)
  10. 成都盛铭轩:电商图片必备哪些信息
  11. Unity-存档与读档
  12. 手机摄像头作为电脑摄像头来使用
  13. 知识图谱认知智能理论与实战----------第二章 知识图谱模式设计
  14. 常见电脑硬件故障有哪些?如何解决?~~~主板故障
  15. Lua中获取指定月份总天数
  16. 云原生是什么?细数云原生的5大特征
  17. 菜刀如何连接mysql_中国菜刀之终端操作及数据库管理
  18. 华为2288H V5服务器RAID配置
  19. 关于git提交报错Please tell me who you are.
  20. 百度浏览器android,百度浏览器app下载

热门文章

  1. host文件修改后无法保存的问题
  2. list循环添加数据_List 去除重复数据的 5 种正确姿势!你知道几种?
  3. arcgis栅格计算器python教程_ArcGIS栅格计算器
  4. 如何有效提升网站转化率?从四个方面着手分析!
  5. 模拟海_浙江平湖“海水稻”丰收的背后,有这家来自上海企业的科技“秘方”...
  6. 创建linux目录,Linux目录的创建方法
  7. php json字符串返回false,php – json_encode()返回false
  8. 导出jar插件_利用类加载器解决不兼容的Jar包共存的问题
  9. pip包重新安装mysql_Ubuntu pip 安装 mysql-python包出错
  10. 写入缓存策略无法更改_【第1747期】webpack 5 之持久化缓存指南