
-Code
import java.util.Scanner;
public class BOJ15649 {
static int N, M;
static boolean[] visited;
static int[] arr;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
N = sc.nextInt();
M = sc.nextInt();
arr = new int[N];
visited = new boolean[N];
backtracking(0);
}
public static void backtracking(int length) {
if (length == M) {
// 수열 출력
printArray();
return;
}
// 갈 수 있는 모든 선택지
for (int i = 0; i < N; i++) {
if (!visited[i]) {
visited[i] = true;
arr[length] = i;
backtracking(length + 1);
visited[i] = false;
}
}
}
private static void printArray() {
for (int i = 0; i < M; i++) {
System.out.print(arr[i] + 1 + " ");
}
}
}'Beakjoon&프로그래머스 > Java' 카테고리의 다른 글
| [백준/Java] 29538번 Взлет (0) | 2025.11.04 |
|---|---|
| [백준/Java] 9663번 N-Queen (0) | 2025.11.03 |
| [백준/Java] 6860번 Maternity (0) | 2025.11.02 |
| [백준/Java] 30217번 Let’s Portmanteau (0) | 2025.11.01 |
| [백준/Java] 15155번 Analysis of Advanced Analytics (0) | 2025.10.31 |