P1706 全排列问题(dfs+递归)

embedded/2024/9/23 3:37:37/

1. x表示层数,第一层选了1执行for1,进入第二层选2并标记2,第二层只进行到for2,进入第三层选3并标记3,选完之后删除标记3。到现在完成第一组123

2.之后回到第二层释放2再进行for3,第二层选择3,第三层执行到for2选择2再释放2,完成第二组132

3.回到第一层执行for2,然后选2.。。。变成213,231

2.往复执行直到进行完所有全排列

#include <bits/stdc++.h>
using namespace std;
#define endl '\n'
#define int long long int
int n,vis[20],a[20];
void pr() {for (int i = 1; i <= n; i++) {cout << setw(5) << a[i];}cout << endl;
}
void dfs(int x) {if (x > n) {pr();}for (int i = 1; i <= n; i++) {if (!vis[i]) {a[x] = i;vis[i] = 1;dfs(x + 1);vis[i] = 0;}}
}
signed main() {cin >> n;dfs(1);return 0;
}


http://www.ppmy.cn/embedded/115391.html

相关文章

Android中的Context

Android中的Context是一个核心概念&#xff0c;它代表了应用程序的运行环境和上下文信息。Context在Android开发中扮演着至关重要的角色&#xff0c;为应用程序提供了访问系统资源、启动组件、发送广播、获取系统服务等能力。下面&#xff0c;我将从Context的定义、种类、作用、…

【Delphi】知道控件名称(字符串),访问控件

在 Delphi 中&#xff0c;可以使用 RTTI&#xff08;运行时类型信息&#xff09; 或其他方法通过对象的名称字符串来访问对象。比如&#xff0c;如果你有一个控件的名称字符串&#xff0c;你希望通过该名称找到并访问实际的控件。 以下是通过 RTTI 以及其他技术&#xff08;如…

分布式安装LNMP

目录 搭建LNMP架构 安装mysql 1.上传mysql软件包&#xff0c;关闭防火墙和核心防护 2.安装环境依赖包&#xff0c;桌面安装可能有自带的数据库除 3.配置软件模块 4.编译及安装 5.创建mysql用户 6.修改mysql 配置文件 7.更改mysql安装目录和配置文件的属主属组 8.设置…

FL Studio 24.1.1.4285中文破解完整版免费下载FL 2024注册密钥完整版crack百度云安装包下载

FL Studio 24.1.1.4285中文破解版是一个强大的软件选项&#xff0c;可以使用专业应用程序&#xff08;如最先进的录音机、均衡器、内置工具等&#xff09;制作循环和歌曲。它由数百个合成器和混响等效果以及均衡器组成&#xff0c;除此之外&#xff0c;您还可以在新音乐制作的方…

2.Seata 1.5.2 集成Springcloud-alibaba

一.Seata-server搭建已完成前提下 详见 Seata-server搭建 二.Springcloud 项目集成Seata 项目整体测试业务逻辑是创建订单后&#xff08;为了演示分布式事务&#xff0c;不做前置库存校验&#xff09;&#xff0c;再去扣减库存。库存不够的时候&#xff0c;创建的订单信息数…

【已解决】Linux ubuntu 20.04 docker 不需要sudo权限

这里写自定义目录标题 不使用sudo运行docker会产成权限问题解决方案 不使用sudo运行docker会产成权限问题 docker: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Head "http://%2Fvar%2Frun%2Fdocker.sock/_…

大棚分割数据集,40765对影像,16.9g数据量,0.8米高分二,纯手工标注(arcgis标注)的大规模农业大棚分割数据集。

数据集名称&#xff1a; &#xff09;“Greenhouse Segmentation Dataset (GSD)” 数据集规模&#xff1a; 包含40,765对用于大棚分割的影像数据&#xff0c;每对影像包括一张原始图像和相应的分割标签图。 数据量&#xff1a; 总数据量约为16.9GB&#xff0c;适合存储在现…

【系统架构设计师】设计模式的分类

设计模式概述 设计模式(Design Pattern)是软件开发中的最佳实践,旨在解决常见的设计问题。它们可以分为三大类:创建型模式、结构型模式、行为型模式,每个类别都提供了解决特定问题的模式。下面将详细介绍每个类别及其包含的所有设计模式,并提供简要的说明,帮助区分不同…