【题解-洛谷】P1706 全排列问题

题目:P1706 全排列问题

题目描述

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

输入格式

一个整数 n n n。

输出格式

由 1 ∼ n 1 \sim n 1∼n 组成的所有不重复的数字序列,每行一个序列。

每个数字保留 5 5 5 个场宽。

输入输出样例 #1

输入 #1

复制代码
3

输出 #1

复制代码
1    2    3
    1    3    2
    2    1    3
    2    3    1
    3    1    2
    3    2    1

说明/提示

1 ≤ n ≤ 9 1 \leq n \leq 9 1≤n≤9。

代码

cpp 复制代码
#include<iostream>

using namespace std;

const int Maxn = 9 + 10;

int n, path[Maxn], vis[Maxn];

void dfs(int pos){
    if(pos == n){
        for(int i = 0; i < n; i ++){
            printf("%5d", path[i]);
        }
        puts("");
        return;
    }
    for(int i = 1; i <= n; i ++){
        if(!vis[i]){
            path[pos] = i;
            vis[i] = 1;
            dfs(pos + 1);
            vis[i] = 0;
        }
    }
}
int main(){
    cin >> n;
    dfs(0);
    return 0;
}

结果


相关推荐
:-)3 小时前
算法-归并排序
java·开发语言·数据结构·算法·排序算法
Jerry7 小时前
LeetCode 101. 对称二叉树
算法
可编程芯片开发8 小时前
基于MPPT最大功率跟踪的离网光伏发电系统Simulink建模与仿真
算法
AI科技星8 小时前
线性算子不是空间映射函数,是全域双螺旋场之间拉伸、旋转、耦合、坍缩的跨空间标准化变换载体《全域数学vs传统数学:人类文明进阶200讲》第80讲
线性代数·算法·矩阵·数据挖掘·回归·乖乖数学·全域数学
米罗篮8 小时前
矩阵快速幂 (Exponentiation By Squaring Applied To Matrices)
c++·线性代数·算法·矩阵
dream_home84079 小时前
图像算法模型NPU适配与算法服务实战指南
人工智能·python·算法·npu 图像服务
大鱼>9 小时前
多宠物家庭智能管理平台:云端架构与多设备协同实战
python·算法·iot·宠物
To_OC10 小时前
LC 22 括号生成:刷完这道题,我终于搞懂回溯剪枝了
javascript·算法·leetcode
To_OC10 小时前
LC 39 组合总和:回溯入门必刷题,我踩过的两个坑都在这了
javascript·算法·leetcode
数字杂技师10 小时前
每条推荐都很准,为什么我还是越刷越无聊?
算法