链接:https://ac.nowcoder.com/acm/problem/15128
来源:牛客网

题目描述
老李见和尚赢了自己的酒,但是自己还舍不得,所以就耍起了赖皮,对和尚说,光武不行,再来点文的,你给我说出来1-8的全排序,我就让你喝,这次绝不耍你,你能帮帮和尚么?
输入描述:

输出描述:

1~8的全排列,按照全排列的顺序输出,每行结尾无空格。

示例1
输入
复制

No_Input

输出
复制

Full arrangement of 1~8

备注:

1~3的全排列 :
1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1

求全排列是dfs的基本功了

#ifdef debug
#include <time.h>
#include "/home/majiao/mb.h"
#endif#include <iostream>
#include <algorithm>
#include <vector>
#include <string.h>
#include <map>
#include <set>
#include <stack>
#include <queue>
#include <math.h>#define MAXN (16)
#define ll long long int
#define INF (0x7f7f7f7f)
#define fori(lef, rig) for(int i=lef; i<=rig; i++)
#define forj(lef, rig) for(int j=lef; j<=rig; j++)
#define fork(lef, rig) for(int k=lef; k<=rig; k++)
#define QAQ (0)using namespace std;#ifdef debug
#define show(x...) \
do { \cout << "\033[31;1m " << #x << " -> "; \err(x); \
} while (0)void err() { cout << "\033[39;0m" << endl; }
template<typename T, typename... A>
void err(T a, A... x) { cout << a << ' '; err(x...); }
#endif#ifndef debug
namespace FIO {template <typename T>void read(T& x) {int f = 1; x = 0;char ch = getchar();while (ch < '0' || ch > '9') { if (ch == '-') f = -1; ch = getchar(); }while (ch >= '0' && ch <= '9') { x = x * 10 + ch - '0'; ch = getchar(); }x *= f;}
};
using namespace FIO;
#endifint n = 8, m, Q, K, rs[MAXN], a[MAXN], vis[MAXN];void dfs(int level) {if(level == n+1) {for(int i=1; i<=n; i++)printf("%d%c", a[rs[i]], i==n?'\n':' ');return ;}for(int i=1; i<=n; i++) {if(!vis[i]) {vis[i] = true;rs[level] = i;dfs(level+1);vis[i] = false;}}
}int main() {#ifdef debugfreopen("test", "r", stdin);clock_t stime = clock();
#endiffori(1, 8) a[i] = i;dfs(1);#ifdef debugclock_t etime = clock();printf("rum time: %lf 秒\n",(double) (etime-stime)/CLOCKS_PER_SEC);
#endif return 0;
}

NC15128 老子的全排列呢 dfs 全排列 (何以解忧,唯有暴搜)相关推荐

  1. [何以解忧唯有颓废]老舒

    声明:窝的辣鸡中二的CSDN blog里好像不只有一些学术的东西?把自己的一些东西都扔到这上面吧,也是一些回忆.希望能给大家看到更丰富的博主. 转自学长 此文给予@SLYZ最神的Leaves以崇高的敬 ...

  2. 符号三角形-计算机算法设计与分析【1600+字解析 dfs全排列 列举情况】【题意分析】【算法分析】【思路是怎么来的】【过程是什么】

    符号三角形 题意分析 思路过程分析 算法分析 下图是由14个"+"和14个"-"组成的符号三角形.2个同号下面都是"+",2个异号下面都是& ...

  3. 递归解析之DFS全排列

    前言 通过上一篇文章<return None来看递归函数流程解析>了解了递归函数的调用及执行之后,来看看如何应用吧.本篇文章将以DFS算法实现全排列为例,加深对递归的理解,顺便看看DFS算 ...

  4. 子矩阵(暴搜(全排列)+DP)

    子矩阵(暴搜(全排列)+DP) 一.题目 子矩阵 时间限制: 1 Sec  内存限制: 128 MB 提交: 1  解决: 1 [提交][状态][讨论版] 题目描述 给出如下定义: 1. 子矩阵:从一 ...

  5. hdu4848 DFS 暴搜+ 强剪枝

    题意:       给你一个图,然后问你从1出发遍历所有的点的距离和是多少,这里的距离和是每一个点到1的距离的总和,不是选择一条遍历所有点的路径的总长度,时间限制是 8000ms. 思路:       ...

  6. 算法提高课-图论-单源最短路的综合应用-AcWing 1135. 新年好:dijkstra和dfs暴搜结合

    题目分析 来源:acwing 分析: 先预处理出从1,a,b,c,d,e出发到其他所有点的单源最短路.存在二维数组dist[6][N]中 dfs暴搜所有拜访顺序,共有5!种,对于每一种拜访顺序,可以通 ...

  7. PAT甲级1119 Pre- and Post-order Traversals (30分):[C++题解]暴搜dfs、前序遍历和后序遍历求中序遍历

    文章目录 题目分析 题目链接 题目分析 分析 给了前序遍历和后序遍历,能够确定根结点,但是左子树和右子树的长度是不确定的.这里采用的解决方案是枚举左子树的结点个数,其实右子树的结点个数也确定了.对于每 ...

  8. Leetcode5635. 构建字典序最大的可行序列[C++题解]:dfs暴搜

    文章目录 题目 题目链接 题目 题目重述:给定一个数n,求一个长度为2n-1的序列:1只出现一次,2~n之间每个数出现2次,并且 对于2 ~n之间的每个数i,两个i之间相差为i,比如n=3,[3,1, ...

  9. 「CSS畅想」何以解忧,美食足矣,用技术给好友开发了一个零食盲盒小游戏

    灵感来源 天气冷了,办公室零食准备起来.最近一直忙着工作,有点忽视了好友.看着网友分享的零食图片,我头顶的灵感之光亮了. 正所谓,何以解忧,美食足矣.我准备给好友写一个零食盲盒的小游戏,能看不能吃的那 ...

最新文章

  1. HTML基础第七讲---框架
  2. ht-8 对arrayList中的自定义对象排序( Collections.sort(ListT list, Comparator? super T c))...
  3. matlab-Grefenstette的编码与解码
  4. c语言如何编写mysql客户端_【C/C++学院】(23)Mysql数据库编程--C语言编程实现mysql客户端...
  5. CSS 元素的定位之相对定位 position: relative
  6. Caffe学习:pycaffe利用caffemodel进行分类=裁剪图片
  7. 用LaTeX写毕业论文-UESTC
  8. MacOS Big Sur 11.2.3 (20D91) with Clover 5131 and OC 0.6.7 and PE 三EFI分区原版DMG黑苹果镜像
  9. 从通信的角度理解现场总线
  10. MarkDown语法学习--字体,分割线,删除线,下划线
  11. SDR软件移步BG1ICA.vicp.net:8888
  12. 【Linux入门学习之】Ubuntu常用软件 速配指南之软件参考
  13. Executors.newFixedThreadPool(int threads)和Executors.newCachedThreadPool()
  14. PANet(2018)
  15. 由硫化铅/硒化物和碲化物(PbX:PbS,PbSe和PbTe)制成的QD钙钛矿量子点
  16. SafeNet加密软件详细步骤
  17. 通过VN1630/VN7640的I/O功能来确认电源设置电压的时间精确度
  18. 音悦台800多万MV视频抓取
  19. 【转载BYR】一年来遇到的C++问题和解决方法,分享一下
  20. TensorFlow2使用AutoGraph时出现关于gast的一个warning

热门文章

  1. 当下的个人站长都用哪些模板做网站呢?
  2. 航信 PNR解析详解
  3. Android之lunch命令
  4. 54-基于51单片机GSM模块的家庭防火防盗报警系统
  5. 解决开机出现“CLIENT MAC ADDR”的问题
  6. 指数基金定投指南 思维导图
  7. GPU硬件加速的那些优秀的资源总结-续
  8. 我在博客园的这一年小记
  9. 两万条数据需要做个数据图_第3关:基于Excel对电商母婴数据进行分析
  10. 茶学领域如何用的上计算机,计算机视觉图像理技术在茶学领域应用方法的研究.pdf...