반응형
🅰 백준 9663. N-Queen
✏️ 문제 풀이
✏️ 소스코드
package bruteforce;
import java.util.*;
import java.io.*;
public class Main_골드5_9663_손은성 {
static int chess[], cnt, N;
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
N = Integer.parseInt(br.readLine());
chess = new int[N];
queen(0);
System.out.println(cnt);
}
private static void queen(int n) {
if (!isAvailable(n-1)) {
return;
}
if (n > N - 1) {
cnt++;
return;
}
for (int i = 0; i < N; i++) {
chess[n] = i;
queen(n + 1);
}
}
private static boolean isAvailable(int n) {
for (int i = 0; i < n; i++) {
if (chess[i] == chess[n] || Math.abs(chess[i] - chess[n]) == n-i)
return false;
}
return true;
}
}
✅ 후기
반응형
'백준 > 완전탐색' 카테고리의 다른 글
백준 1759. 암호 만들기 (0) | 2021.08.26 |
---|---|
백준 5014. 스타트링크 (0) | 2021.08.26 |
백준 2251. 물통 (0) | 2021.08.26 |
백준 1697. 숨바꼭질 (0) | 2021.08.26 |
백준 1182. 부분수열의 합 (0) | 2021.08.26 |
댓글