擅长排列的小明

时间限制:1000 ms  |  内存限制:65535 KB
难度:4
描述
小明十分聪明,而且十分擅长排列计算。比如给小明一个数字5,他能立刻给出1-5按字典序的全排列,如果你想为难他,在这5个数字中选出几个数字让他继续全排列,那么你就错了,他同样的很擅长。现在需要你写一个程序来验证擅长排列的小明到底对不对。

输入
第一行输入整数N(1<N<10)表示多少组测试数据,
每组测试数据第一行两个整数 n m (1<n<9,0<m<=n)
输出
在1-n中选取m个字符进行全排列,按字典序全部输出,每种排列占一行,每组数据间不需分界。如样例
样例输入
2
3 1
4 2
样例输出
1
2
3
12
13
14
21
23
24
31
32
34
41
42
43

代码


#include<stdio.h>#define MAXSIZE 10
int array[MAXSIZE];
bool bi[MAXSIZE];int n, r;void back(int num_1, int num_2);int main()
{int count, i;scanf("%d", &count);while(count--){scanf("%d%d", &n, &r);if(r == 0){printf("\n");continue;}for(i = 1; i <= n; i++){array[0] = i;bi[i] = 1;back(i, 1);bi[i] = 0;}}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 = 1; i <= n ; i++){if(bi[i])                //重点是标记数组  因为最后打出的数中 数字不能重复continue;/*  if(i == num_1)continue;*/array[num_2] = i;bi[i] = 1;back(i , num_2 + 1);bi[i] = 0;                //重新标记成未被标记的  回溯}}
}

擅长排列的小明(nyoj19)相关推荐

  1. NYOJ 擅长排列的小明 II---Problem B

    擅长排列的小明 II 时间限制:1000 ms  |  内存限制:65535 KB 描述 小明十分聪明,而且十分擅长排列计算. 有一天小明心血来潮想考考你,他给了你一个正整数n,序列1,2,3,4,5 ...

  2. 动态规划(6)——NYOJ469擅长排列的小明II*

    擅长排列的小明 II 描述 小明十分聪明,而且十分擅长排列计算. 有一天小明心血来潮想考考你,他给了你一个正整数n,序列1,2,3,4,5......n满足以下情况的排列: 1.第一个数必须是1 2. ...

  3. nyist oj 19 擅长排列的小明(dfs搜索+STL)

    擅长排列的小明 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描写叙述 小明十分聪明.并且十分擅长排列计算.比方给小明一个数字5,他能立马给出1-5按字典序的全排列,假设你想 ...

  4. nyoj 19 擅长排列的小明(深搜,next_permutation)

    擅长排列的小明 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述 小明十分聪明,而且十分擅长排列计算.比如给小明一个数字5,他能立刻给出1-5按字典序的全排列,如果你想为难 ...

  5. 南阳理工学院OJ 擅长排列的小明

    擅长排列的小明 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述 小明十分聪明,而且十分擅长排列计算.比如给小明一个数字5,他能立刻给出1-5按字典序的全排列,如果你想为难 ...

  6. NYOJ 19 擅长排列的小明

    擅长排列的小明 时间限制: 1000 ms  |  内存限制: 65535 KB 难度: 4 描述 小明十分聪明,而且十分擅长排列计算.比如给小明一个数字5,他能立刻给出1-5按字典序的全排列,如果你 ...

  7. NYIST 擅长排列的小明

    擅长排列的小明 时间限制: 1000 ms  |  内存限制: 65535 KB 难度: 4 描述 小明十分聪明,而且十分擅长排列计算.比如给小明一个数字5,他能立刻给出1-5按字典序的全排列,如果你 ...

  8. NYOJ 擅长排列的小明 酒馆浪人的博客

    这道题依旧是全排列只不过根D的小L略有不同 擅长排列的小明 时间限制: 1000 ms  |  内存限制: 65535 KB 难度: 4 描述 小明十分聪明,而且十分擅长排列计算.比如给小明一个数字5 ...

  9. 擅长排列的小明 II

    描述 小明十分聪明,而且十分擅长排列计算. 有一天小明心血来潮想考考你,他给了你一个正整数n,序列1,2,3,4,5......n满足以下情况的排列: 1.第一个数必须是1 2.相邻两个数之差不大于2 ...

最新文章

  1. pkg-config工具在实际工程中的用法
  2. 隔年的衣服发黄处理方法
  3. 14岁清华本科新生免试直博!高校新生大数据陆续曝光,男女比例、年龄差距各异......
  4. 微信小程序 提交表单
  5. saber软件安装后怎么打开_教程:新《Beat Saber》mod安装工具已推出
  6. linux中的守护进程
  7. PHP程序中时间戳,php 时间戳常用代码
  8. mysql多线程使用一个链接_探索多线程使用同一个数据库connection的后果
  9. pycharm终端运行python文件_在PyCharm终端中执行python manage.py..._慕课问答
  10. 【案例】保健品行业如何优化供应链管理?APS系统来帮忙
  11. 机器学习从业者人手必备的8本书
  12. 《ARM64体系结构编程与实践》开始预订了
  13. 简历关于计算机办公软件怎么写,简历中怎么写办公软件
  14. 爬虫手册03 Selenium的使用
  15. 华为服务器虚拟kvm退出全屏,kvm虚拟机全屏快捷键
  16. 易知微母公司袋鼠云获过亿元C+轮融资,深耕国产自研数字化领域
  17. positions的意思_position是什么意思_position的翻译_音标_读音_用法_例句_爱词霸在线词典...
  18. CSS实现div竖向排版
  19. aria2 linux 手动安装,Linux安装aria2(示例代码)
  20. 7 种模型加权集成方法

热门文章

  1. 微软云计算介绍与实践(实践之三十五)
  2. sem_wait sem_post信号量操作进本函数
  3. AFNetWork 学习资源....
  4. yum 快速安装 LAMP
  5. Oracle listener静态注册和动态注册(zt)
  6. Python3之max key参数学习记录
  7. 理解浏览器和nodeJs中的事件循环(Event Loop)
  8. 【Spring】21、用spring目标对象处理Transaction rolled back because it has been marked as rollback-only...
  9. 解决 sublime text 3 there are no packages available for installation 错误
  10. LeetCode57 Insert Interval