PTA—输出全排列 (20分) 递归回溯思想
PTA—输出全排列 (20分)
递归回溯思想
题目要求:
请编写程序输出前n个正整数的全排列(n<10),并通过9个测试用例(即n从1到9)观察n逐步增大时程序的运行时间。
输入格式:
输入给出正整数n(<10)。
输出格式:
输出1到n的全排列。每种排列占一行,数字间无空格。排列的输出顺序为字典序,即序列a1,a2,⋯,an排在序列b1 ,b2,⋯,bn之前,如果存在k使得a1=b1,⋯,ak=bk并且 ak+1<bk+1。
输入样例:
3
输出样例:
123
132
213
231
312
321
代码
#include<stdio.h>
int a[11];
int n;
int visit[11]; //记录是否“访问”
void Find(int step)
{if(step==n+1) //如果找够了,就打印 {for(int i=1;i<=n;i++)printf("%d",a[i]);printf("\n");}else{for(int i=1;i<=n;i++){if(!visit[i])//未访问{a[step]=i; //保存visit[i]=1; //标记Find(step+1); //递归寻找下一个 visit[i]=0; //回溯(模拟未访问) } }}
}
int main()
{scanf("%d",&n);Find(1); //从第一个开始return 0;
}
PTA—输出全排列 (20分) 递归回溯思想相关推荐
- 7-177 输出全排列 (20 分)
7-177 输出全排列 (20 分) 请编写程序输出前n个正整数的全排列(n<10),并通过9个测试用例(即n从1到9)观察n逐步增大时程序的运行时间. 输入格式: 输入给出正整数n(<1 ...
- 7-1 输出全排列 (20 分)(全排列+递归+图解)Come Baby
一:题目 请编写程序输出前n个正整数的全排列(n<10),并通过9个测试用例(即n从1到9)观察n逐步增大时程序的运行时间. 输入格式: 输入给出正整数n(<10). 输出格式: 输出1到 ...
- C++学习之路 | PTA乙级—— 1043 输出PATest (20 分)(精简)
1043 输出PATest (20 分) 给定一个长度不超过 10 4 的.仅由英文字母构成的字符串.请将字符重新调整顺序,按 PATestPATest- 这样的顺序输出,并忽略其它字符.当然 ...
- C语言程序练习-L1-023 输出GPLT (20分)
L1-023 输出GPLT (20分) 给定一个长度不超过10000的.仅由英文字母构成的字符串.请将字符重新调整顺序,按GPLTGPLT-这样的顺序输出,并忽略其它字符.当然,四种字符(不区分大小写 ...
- Leetcode-二分+递归/回溯-1723. 完成所有工作的最短时间
题目1723. 完成所有工作的最短时间: 题解: 递归回溯模板超时 按照模板+简单剪枝,超时 class Solution { private:vector<int> sum;int mi ...
- PTA 古风排版 (20 分)队列方法
古风排版 (20 分) 中国的古人写文字,是从右向左竖向排版的.本题就请你编写程序,把一段文字按古风排版. 输入格式: 输入在第一行给出一个正整数N(<100),是每一列的字符数.第二行给出一个 ...
- PTA 整除光棍 (20 分) Java (BigInteger简单解题)
L1-046 整除光棍 (20 分) 这里所谓的"光棍",并不是指单身汪啦~ 说的是全部由1组成的数字,比如1.11.111.1111等.传说任何一个光棍都能被一个不以5结尾的奇数 ...
- PTA 试密码 (20分)
"人其实就这一辈子,我想要的生活不是安逸的,虽然很累,但我想要辉煌的人生,所以也一直在为此努力.不松懈.我所理解的辉煌人生,不是挣了多少钱.做了多伟大的事,而是将人生过得有意义,不碌碌无为. ...
- PAT (Basic Level) Practice (中文)1043 输出PATest (20 分)
给定一个长度不超过 1 的.仅由英文字母构成的字符串.请将字符重新调整顺序,按 PATestPATest.... 这样的顺序输出,并忽略其它字符.当然,六种字符的个数不一定是一样多的,若某种字符已经输 ...
最新文章
- Unity-3d Day03
- 文件,文件夹基本操作
- 今天下午接到阔总编的电话
- Python中的高级数据结构
- apache cxf_Wildfly,Apache CXF和@SchemaValidation
- eclipse同步svn时如何过滤target等文件
- python入门指南 许半仙-《猛一相亲指南》TXT全本 百度云网盘下载 by许半仙
- sql limit 子句_SQL有子句–综合指南
- AHOI2018训练日程(3.10~4.12)
- jekins构建通知邮件配置及邮件附件设置,jenkins构建通知邮件没有RF的log和report文件...
- Java工程师的职业规划
- Java常用开发工具推荐
- clouder manager卸载
- 检测Emai地址是否正确
- Zabbix5.0监控CenterOS(RPM版)
- R语言基础数据操作fBasics
- java图形化界面操作和命令行操作,常用的命令行指令
- 罗马数字 java_java将罗马数字转换成整数算法详解-Fun言
- 服务器芯片组 c242评测,完胜690!最详尽的C68G芯片组性能评测
- 天猫京东双十一活动助手V1.9.7
热门文章
- 批量插入数据库语句java_java相关:MyBatis批量插入数据到Oracle数据库中的两种方式(实例代码)...
- 备份与恢复oracle,oracle 备份与恢复
- php优先队列,PHP 数据结构队列(SplQueue)和优先队列(SplPriorityQueue)简单使用实例
- 场景法:基本流、备选流、构造场景
- python统计元素个数_python怎么统计列表中元素的个数
- Android--Fragment 实现懒加载和不重复加载
- [基础|理论|实验]linux下的文件读写
- Exchange 2010安装前的准备工作
- 【转】“无法在Web服务器上启动调试。您不具备调试此应用程序的权限,此项目的URL位于Internet区域”错误提示的解决...
- Mono 把 .NET 应用程序移植到 Linux