当前位置: 首页 > news >正文

OJ 系统未解决或者有疑问问题:

34101 - 全排列问题

时间限制 : 1 秒

内存限制 : 128 MB

输出自然数 1 到 n 所有不重复的排列,即 n 的全排列,要求所产生的任一数字序列中不允许出现重复的数字。

输入

n(1≤n≤9)

输出

由 1~n 组成的所有不重复的数字序列,每行一个序列。(每个数字占5位输出)

样例

输入

3

输出

    1    2    3 1    3    2 2    1    3 2    3    1 3    1    2 3    2    1

 

#include<iostream>
#include<iomanip>
#include<algorithm>
#include<stdio.h>
using namespace std;int i, j;
const int maxn = 10;
int digit[maxn], temp[maxn];
bool judge[maxn];
int n;inline void f(int cnt)
{int i;if (cnt == n){for (i = 0; i < n; i++){printf("%5d", temp[i]);}cout << endl;}for (i = 0; i < n; i++){if (judge[i] == 0){judge[i] = 1;temp[cnt] = digit[i];f(cnt + 1);judge[i] = 0;}}
}int main()
{cin >> n;for (int i = 0; i < n; i++){digit[i] = i + 1;}f(0);return 0;
}

这道题用到了回溯,对回溯不是很清楚,得系统学习一下数据结构的知识。

http://www.lryc.cn/news/69414.html

相关文章:

  • 《游戏编程模式》--优化模式--学习
  • 电脑照片怎么导入苹果手机?三个妙招帮你解决!
  • 换个花样玩C++(13)一文深度全面剖析类构造,析构,赋值运算和移动构造
  • 这是一篇使用ChatGPT生成的关于隐私计算的文章
  • Docker持久化固定容器IP
  • Filter和Interceptor和Aspect
  • maven 项目依赖加载不出来
  • Python collections模块
  • Qt-学习 QJson协议解析
  • Git的安装与连接
  • MySQL5.0完全卸载教程
  • rpm包编译工具rpmbuild使用介绍
  • vue3中使用cherry-markDown步骤
  • 数据建模方法论及实施步骤
  • AUTOSAR知识点 之 COM (一):基础知识
  • 自媒体品牌宣传策略注意哪些,是怎么种草的
  • 网络带宽管理
  • SpringCloud(27. Redis 和 ZK 分布式锁)
  • 运行时栈帧结构与方法调用
  • VSCode +gdb+gdbserver远程调试arm开发板
  • 阿里云大学考试python中级题目及解析-python高级
  • 基于FPGA的车牌识别
  • Qt - 进程/线程 补充进阶
  • spring笔记
  • 最大熵模型
  • 微服务中网关的配置
  • Linux基本指令实现4及热键指令详解
  • 系统调用与API
  • OpenPCDet系列 | 5.4.1 DenseHead中的AnchorGenerator锚框生成模块
  • 【开发者指南】如何在MyEclipse中使用HTML或JSP设计器?(上)