728x90
https://www.acmicpc.net/problem/10974
import java.util.Arrays;
import java.util.Scanner;
public class Main {
static int[] answer;
static int n;
public static void main (String[] args) {
Scanner sc = new Scanner(System.in);
n = sc.nextInt();
answer = new int[n];
permutation(0,new boolean[n]);
}
static void permutation(int start, boolean[] bool) {
if(start == n) {
for(int i=0; i<answer.length; i++) {
System.out.print(answer[i] + " ");
}
System.out.println();
return;
}
for(int i=0; i<n; i++) {
if(bool[i])
continue;
bool[i] = true;
answer[start] = i+1;
permutation(start+1, bool);
bool[i] = false;
}
}
}
728x90
'[알고리즘] > 알고리즘' 카테고리의 다른 글
[알고리즘] SW Expert Academy 3499. 퍼펙트 셔플 (0) | 2022.02.13 |
---|---|
[알고리즘] 백준 17478. 재귀함수가 뭔가요? (0) | 2022.02.13 |
[알고리즘] 백준6603. 로또 (0) | 2022.02.13 |
[알고리즘] 백준2563. 색종이 (0) | 2022.02.11 |
[알고리즘] 백준 1009번. 분산처리 (0) | 2022.02.10 |