组合数

时间限制:3000 ms  |  内存限制:65535 KB
难度:3
描述
找出从自然数1、2、... 、n(0<n<10)中任取r(0<r<=n)个数的所有组合。

输入
输入n、r。
输出
按特定顺序输出所有组合。
特定顺序:每一个组合中的值从大到小排列,组合之间按逆字典序排列。
样例输入
5 3
样例输出
543
542
541
532
531
521
432
431
421
321

代码



//不需要回溯 只用递归(从大到小)#include<stdio.h>#define MAXSIZE 10
int array[MAXSIZE];
int n, r;void back(int num_1, int num_2);int main()
{int i;scanf("%d%d", &n, &r);for(i = n; i >= r; i--){array[0] = i;          //只能在置array【0】的值 若果放在下面会出现555 444 333 之类的组合back(i, 1);}return 0;
}void back(int num_1, int num_2)
{int i;if(num_2 == r){for(i = 0; i < r; i++)printf("%d", array[i]);printf("\n");}else{for(i = num_1 - 1; i > 0; i--){array[num_2] = i;back(i , num_2 + 1);            //不用标记数组 因为直接再次覆盖了不用的数据}}
}

组合数(nyoj32)相关推荐

  1. Codeforces Beta Round #95 (Div. 2) 部分解题报告 (dp,组合数,)

    做这样的比赛既考快速编码的能力,还有快速思维的能力.本人很弱,跌了rating..加油!!!.. 第一题上来就把题意理解错了..粗心啊..直接模拟着做就行:1:如果字符串全是大写字母就进行大小写转换: ...

  2. [CQOI2014]数三角形 组合数 + 容斥 + gcd

    推导过程 : 组合数+容斥原理+gcd 正确做法是暴力的一种优化,ans=所有情况 - 平行坐标轴的三点共线 - 斜线三点共线 如果快速求斜线三点共线: 首先要知道一个结论,对于点(a,b) (x,y ...

  3. 多重集表示合json数据_计数DP(划分数,多重集组合数)

    划分数:把n个无区别的物品划分成不超过m组. dp[i][j]=j的i划分的总数. dp[i[j]=dp[i][j-i]+dp[i-1][j] 即:将j个物品分成i份,有两种情况:每份划分都大于等于1 ...

  4. 【ACM】杭电OJ 4704 Sum (隔板原理+组合数求和公式+费马小定理+快速幂)

    http://acm.hdu.edu.cn/showproblem.php?pid=4704 1.隔板原理 1~N有N个元素,每个元素代表一个1.分成K个数,即在(N-1)个空挡里放置(K-1)块隔板 ...

  5. [Leetcode] Combinations 组合数

    Combinations Given two integers n and k, return all possible ombinations of k numbers out of 1 ... n ...

  6. 组合数函数-快速提取所有可能的组合数

    组合数:从m个不同元素中取出n(n≤m)个元素的所有组合的个数,叫做从m个不同元素中取出n个元素的组合数. 代码: str_comb <- function(vector){n <- le ...

  7. 不使用递归求全排列和组合数

    同学遇到的面试问题,大意是M台机器放在N个房间,不使用递归求打印所有情况 解题思路:情况共计N**M种.开始想将所有情况放入数组,填充好数组再逐个打印.随后发现按照填充的思路,不使用大数组也可以实现. ...

  8. 使用C#.NET列举组合数前N项和

    列举如下列所示的组合数前N项和,代码如下(递归方法里注意去重): 1 static void Main(string[] args) 2 { 3 List<string> list = G ...

  9. 洛谷P1036选数(素数+组合数)

    题目链接:https://www.luogu.org/problemnew/show/P1036 主要考两个知识点:判断一个数是否为素数.从n个数中选出m个数的组合 判断一个数是否为素数: 素数一定是 ...

最新文章

  1. Curator Cache
  2. 使用Python+OpenCV进行图像处理之入门教程
  3. NC:菌物组构建---随机性v.确定性、干旱胁迫、宿主筛选、统一动态(郭良栋、杨军点评)
  4. pandas分层索引(层级索引、MultiIndex)的创建、取值、切片、统计计算以及普通索引和层级索引的转换方法
  5. AI教父杰弗里辛顿:AI反学习可能揭开人类梦境的奥秘
  6. 《科学》:中国科学家揭示,人脑中间神经元多样性从何而来?
  7. 对图像数据最主要的预处理: Resize
  8. arcgis运行python脚本一段时间后会卡,为什么这个python多处理脚本在一段时间后会变慢?...
  9. Apache RocketMQ部署文档
  10. 数据分析方法有哪些_数据分析方法
  11. 云服务器 ECS(CentOS) 安装 Node
  12. iOS限制文本输入长度进阶之 一
  13. modbus调试工具 linux,Modbus测试工具 :Modbus Poll,Modbus Slave
  14. 从 Google play 商店直接下载 apk 安装包
  15. 老打印机USB改无线连接
  16. linux rpm是什么意思中文,rpm是什么意思
  17. 用户计算机MAC地址在哪看,怎么查看本机mac地址_电脑mac地址在哪里
  18. 男人帮所有手机铃声下载|左永邦手机铃声下载,顾小白手机铃声下载,米琪手机铃声下载,艾米手机铃声下载...
  19. 华为鸿蒙国内厂商适配,华为再放大招!鸿蒙系统将适配高通/联发科手机:获国产厂商力挺...
  20. mybatis报错:argument type mismatch

热门文章

  1. eclipse编译android工程提示无翻译字符串错误的忽略方法
  2. uva 820 Internet Bandwidth
  3. (转)教你记住ASP.NET WebForm页面的生命周期
  4. 给Lisp程序员的Python简介
  5. 【python】导入HTMLTestRunner失败---报错ModuleNotFoundError: No module named ‘HTMLTestRunner‘
  6. Java实现数组交换
  7. 9.Springcloud的Hystrix服务熔断和服务降级
  8. svm gui安装 matlab,svm_matlab_gui 支持向量机matlab工具箱(含资料及gui模式)用于分类和回归预测 - 下载 - 搜珍网...
  9. ggspatial | ggplot2的地图制作拓展包(1):如何添加指北针和比例尺
  10. postman在线测试_如何选择适合自己的自动化测试工具?