【递归入门】组合的输出
问题 B: 【递归入门】组合的输出
[命题人 : 外部导入]
时间限制 : 1.000 sec 内存限制 : 128 MB
解决: 1303提交: 2294统计
题目描述
排列与组合是常用的数学方法,其中组合就是从n个元素中抽出r个元素(不分顺序且r < = n),我们可以简单地将n个元素理解为自然数1,2,…,n,从中任取r个数。
现要求你不用递归的方法输出所有组合。
例如n = 5 ,r = 3 ,所有组合为:
1 2 3
1 2 4
1 2 5
1 3 4
1 3 5
1 4 5
2 3 4
2 3 5
2 4 5
3 4 5
输入
一行两个自然数n、r ( 1 < n < 21,1 < = r < = n )。
输出
所有的组合,每一个组合占一行且其中的元素按由小到大的顺序排列,所有的组合也按字典顺序。
提交
提示:
每次进入递归,遍历比a[index-1]大的数,index为递归层数。
AC代码:
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<vector>
#include<map>
#include<cctype>
#include<set>
#include<queue>
#include<stack>
using namespace std;
int n,r;
int flag[30]= {0};
int ans[30];
void dg(int index)
{if(index==r+1){printf("%d",ans[1]);for(int i=2; i<=r; i++)printf(" %d",ans[i]);printf("\n");return ;}for(int i=ans[index-1]+1; i<=n; i++){if(flag[i]==0){ans[index]=i;flag[i]=1;dg(index+1);flag[i]=0;}}
}
int main()
{scanf("%d %d",&n,&r);dg(1);return 0;
}
【递归入门】组合的输出相关推荐
- 信息学奥赛一本通(1317:【例5.2】组合的输出)
1317:[例5.2]组合的输出 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 21154 通过数: 10292 [题目描述] 排列与组合是常用的数学方法 ...
- 1006: 组合的输出(dfs的一种用法)(与排列类似)
题目:1006: 组合的输出 Description 排列与组合是常用的数学方法,其中组合就是从n个元素中抽出r个元素(不分顺序且r<=n),我们可以简单地将n个元素理解为自然数1,2,-,n, ...
- 【例5.2】组合的输出
[例5.2]组合的输出 链接:http://ybt.ssoier.cn:8088/problem_show.php?pid=1317 时间限制: 1000 ms 内存限制: 65536 ...
- java:P1157 组合的输出
洛谷题目:P1157 组合的输出 题目如下: 我的代码: import java.io.*; /* 思路:dfs思想,其中改进下即可,这样就能够得到不重复的组合. 递归代码提醒:t代表当前函数找第几个 ...
- 5978 Problem F 【递归入门】走迷宫
问题 F: [递归入门]走迷宫 时间限制: 1 Sec 内存限制: 128 MB 提交: 128 解决: 46 题目描述 有一个n*m格的迷宫(表示有n行.m列),其中有可走的也有不可走的,如果用1表 ...
- Python 入门之格式化输出
Python 入门之格式化输出 1.格式化 (1)%为占位 (2)%s - 站字符串的位置(数字.字符串都能够进行填充) 学习python中有什么不懂的地方,小编这里推荐加小编的python学习群:8 ...
- 递归入门 斐波那契数列
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! < ...
- 【入门】倒序输出一个四位整数
[入门]倒序输出一个四位整数 题目解释: 这道题题目描述非常明了, 就是倒序输出一个四位数. 题目思路: 这道题可以用两种方法: 用数学上的div和mod截出各个位上的数,再计算: 也可以用字符串倒叙 ...
- 写一个26字母和0-9数字 不同长度组合的输出
写一个26字母和0-9数字 不同长度组合的输出,输出全部的时间不能超过2个小时.需要用多线程录 直接上代码 Password类 package com.more.util; import java.u ...
- 3.1递归实现逆序输出整数
1 递归实现逆序输出整数 (20分) 本题目要求读入1个正整数n,然后编写递归函数reverse(int n)实现将该正整数逆序输出. 输入格式: 输入在一行中给出1个正整数n. 输出格式: 对每一组 ...
最新文章
- 超强实操!手把手教学Kinect深度图与RGB摄像头的标定与配准
- php怎么删除多条,php 用checkbox一次性删除多条记录的方法
- 通知 | “大数据能力提升项目”证书办理及领取(2021年秋季学期)
- ele表格操作区根据数据_Vue数据绑定
- python 无法引用 tensorflow.keras_win10+anaconda安装tensorflow和keras遇到的坑小结
- CreateThread和_beginthread的区别
- linux中的定时器检测按键,STM32单片机利用定时器实现按键采集
- .NET Framework是什么
- pandas 处理 csv
- 返回表单字符串php,PHP字符串如何截取表单内的内容?
- 斐讯K2P B1 博通TTL刷机方法
- Vim使用全指南 (环境配置,插件推荐,美化) (C++,Python,MarkDown,R...)
- 适当修改LIO-SAM_based_relocalization解决初始重定位显示错误
- 论文阅读:ThinLTO: Scalable and Incremental LTO
- ORACLE 10 g的 merge into 用法
- 计算机美化标题教案,计算机基础教案标题.doc
- 高德地图手机端定位偏移问题
- IDEA支持VUE的做法
- Richard Feynman, 挑战者号, 软件工程
- Cadence IC设计环境搭建( IC617+MMSIM151+Calibre2015)
热门文章
- 分享个自己Python爬虫时的浏览器标识库
- 庞贝古城千年废墟复活:VR模型与眼动追踪复现被火山灰掩埋的建筑
- Redis 如何实现库存扣减操作和防止被超卖?(荣耀典藏版)
- 55400-73-2,Ms-PEG5-Ms含有两个甲磺酸基部分的PEG连接物
- html如何实现雪花飘落,如何使用HTML5 canvas实现雪花飘落
- SOME/IP开源库Vsomeip分析
- 学了那么久爬虫,快来看看这些反爬,你能攻破多少?【对应看看自己修炼到了哪个等级~】
- VC6中如何让改变控件Botton的字体(大小和字体)
- tc7102路由器虚拟服务器,国内电信推首款WiFi 6+路由器TC7102,5G和WiFi 6成黄金搭档-贤集网...
- 西游记中荆棘岭五个树精