AcWing 842. 排列数字JAVA
原题链接
简单
作者:
理想二旬.
,
2021-05-14 21:18:38
,
所有人可见
,
阅读 290
import java.io.*;
import java.util.Scanner;
class Main{
private static int N = 9;
//存储排列的方案
private static int[] path = new int[N];
//st数组存储的是当前元素是否被填充过
private static boolean[] st = new boolean[N];
private static int n;
public static void dfs(int u){
//递归出口,当u等于n时说明递归到了第n位,即排列完成一组
if(u == n){
for(int i = 0; i < n; i ++)
System.out.print(path[i] + " ");
System.out.println();
return;
}
for(int i = 1; i <= n; i ++){
//i未被填充
if(st[i] == false){
path[u] = i;
st[i] = true;
dfs(u + 1);
st[i] = false;
}
}
}
public static void main(String[] args){
Scanner in = new Scanner(System.in);
n = in.nextInt();
dfs(0);
}
}
兄弟有时间填个邀请码hhhhhhhhh(可以得AC币,邀请码在学生认证那填) 我的邀请码是:GUDFH