도구스학업·수학

N-퀸 배치 계산기

N×N 판에 서로 공격하지 않는 퀸 N개를 놓는 배치를 보여 주고 경우의 수를 셉니다. 8×8은 92가지이고 회전·반사로 겹치는 것을 하나로 세면 12가지이며, N = 2와 3만 해가 없다는 것도 함께 확인할 수 있습니다.

×N

16까지 다룹니다. 해의 개수는 14까지 셉니다 — 그보다 크면 브라우저에서 눈에 띄게 느려집니다.

8×8 판에 퀸 8개

92가지

회전·반사로 겹치는 것을 하나로 세면 12가지입니다.

판 크기8 × 8
전체 배치92가지
회전·반사 제외12가지
대표 하나가 묶는 개수평균 7.67개

배치 1

각 행의 퀸이 놓인 열: 1, 5, 8, 6, 3, 7, 2, 4

번째

1~92 사이에서 고릅니다. 회전·반사로 겹치는 배치도 따로 셉니다.

N이 늘면 얼마나 폭발하는가

N배치 수앞 N 대비
11
200.0배
30
42
5105.0배
640.4배
74010.0배
8922.3배
93523.8배
107242.1배
112,6803.7배
1214,2005.3배
1373,7125.2배
14365,5965.0배

N이 하나 늘 때마다 대략 다섯 배가 됩니다. 마지막으로 세어진 값은 N = 27이고(2016년, 여러 대를 나눠 쓴 계산), 그보다 큰 N의 개수를 빠르게 세는 방법은 알려져 있지 않습니다. 배치 하나를 찾는 것은 아주 큰 N에서도 쉬운데 전부 세는 것은 그렇지 않다는 것이 이 문제의 성격입니다.

한 줄에 하나씩 놓는다고 두면 남는 제약은 열과 두 대각선뿐입니다. 그래서 「이미 쓴 열」, 「↘ 대각선」, 「↙ 대각선」 세 가지를 비트로 들고 다니면 됩니다. 한 줄 내려갈 때마다 ↘ 쪽은 왼쪽으로, ↙ 쪽은 오른쪽으로 한 칸씩 밀리므로 시프트 한 번으로 갱신되고, 놓을 수 있는 자리는 세 값을 OR한 것의 여집합입니다. 대각선을 매번 훑지 않아도 되어 N = 14까지 즉시 나옵니다.
N = 2와 3만 해가 없습니다. 3×3에서는 가운데 칸이 나머지 여덟 칸을 모두 공격해 아예 쓸 수 없고, 한 줄에 하나씩 놓는 여섯 가지(3 × 2 × 1)를 전부 따져 봐도 대각선이 겹칩니다. 2×2는 한 개를 놓는 순간 남은 세 칸이 모두 공격받습니다. N ≥ 4는 언제나 배치가 있고, 공식으로 한 배치를 바로 적어 내는 방법도 알려져 있습니다.
92가지와 12가지는 세는 기준이 다릅니다. 8×8의 92가지는 판을 고정해 놓고 센 것이고, 판을 돌리거나 뒤집어 겹치는 것을 하나로 보면 12가지가 됩니다. 회전 네 가지와 각각의 거울상까지 여덟 가지 대칭이 있으므로 대표 하나가 최대 여덟 개를 묶습니다. 92 ÷ 12가 정확히 8이 아닌 것은 자기 자신과 겹치는 대칭적인 배치가 있기 때문입니다.

계산 방법

  1. 1판 크기 N을 넣습니다. 체스판이라면 8입니다.
  2. 2전체 배치 수와, 회전·반사로 겹치는 것을 뺀 수를 확인합니다.
  3. 3판에서 퀸이 어디에 놓였는지 봅니다.
  4. 4「몇 번째 배치」를 바꿔 다른 배치를 견줍니다.
  5. 5N을 하나씩 늘려 가며 경우의 수가 얼마나 빨리 커지는지 봅니다.

자주 묻는 질문

92가지입니다. 다만 판을 돌리거나 뒤집어 겹치는 것을 하나로 세면 12가지로 줄어듭니다. 회전 네 가지와 각각의 거울상까지 여덟 가지 대칭이 있어 대표 하나가 최대 여덟 개를 묶는데, 92 ÷ 12가 정확히 8이 아닌 것은 자기 자신과 겹치는 대칭적인 배치가 있기 때문입니다.

N = 2와 3뿐입니다. 2×2는 한 개를 놓는 순간 남은 세 칸이 모두 공격받고, 3×3은 가운데 칸이 나머지 여덟 칸을 모두 공격해 쓸 수 없는 데다 한 줄에 하나씩 놓는 여섯 가지를 전부 따져도 대각선이 겹칩니다. N = 1과 N ≥ 4는 언제나 배치가 있습니다.

N이 하나 늘 때마다 대략 다섯 배가 됩니다. N = 10이 724가지, N = 12가 14,200가지, N = 14가 365,596가지입니다. 마지막으로 세어진 값은 N = 27이고(2016년, 여러 대를 나눠 쓴 계산), 그보다 큰 N을 빠르게 세는 방법은 알려져 있지 않습니다.

한 줄에 하나씩 놓는다고 두면 남는 제약이 열과 두 대각선뿐이라, 그 셋을 비트로 들고 다니면 됩니다. 한 줄 내려갈 때마다 대각선 마스크가 좌우로 한 칸씩 밀리므로 시프트 한 번으로 갱신되고, 놓을 수 있는 자리는 세 값을 OR한 것의 여집합입니다. 대각선을 매번 훑지 않아도 되어 N = 14까지 즉시 나옵니다.

다릅니다. 배치 하나를 찾는 것은 아주 큰 N에서도 쉽고, N ≥ 4라면 공식으로 바로 적어 내는 방법까지 알려져 있습니다. 반면 전부 세는 것은 N이 늘 때마다 다섯 배씩 불어나 지금도 N = 27이 한계입니다.

판을 90도씩 네 번 돌린 것과 각각의 거울상, 모두 여덟 가지를 한 무리로 봅니다. 이 도구는 여덟 가지 가운데 사전순으로 가장 앞선 것을 대표로 삼아 세므로, 같은 무리에 속한 배치는 어느 것을 넣어도 같은 대표로 모입니다.

전송되지 않습니다. 모든 계산은 브라우저 안에서 이뤄지고, 입력값은 이 기기에만 남습니다.

알아두면 좋은 점

  • N = 1~14의 배치 수를 OEIS A000170(1, 0, 0, 2, 10, 4, 40, 92, 352, 724, 2680, 14200, 73712, 365596)과 대조해 고정했습니다.
  • 같은 개수를 원리가 전혀 다른 두 번째 풀이로 다시 셉니다. 비트 연산을 한 줄도 쓰지 않고 0~N−1의 모든 순열을 만들어 대각선만 검사하는 방법이며, N = 1~9에서 두 방법의 답이 같은 것을 확인했습니다.
  • 만들어 낸 배치가 정말 서로 공격하지 않는지도 비트마스크를 쓰지 않는 검사기로 다시 확인합니다. N = 4~9의 모든 해에 대해 두 퀸씩 직접 견줘 열과 대각선이 겹치지 않는 것을 고정했습니다.
  • 회전·반사를 같은 것으로 센 개수는 OEIS A002562(1, 0, 0, 1, 2, 1, 6, 12, 46, 92, 341, 1787)와 대조했습니다. 여덟 가지 대칭이 모두 여전히 올바른 배치인 것, 같은 무리의 배치가 모두 같은 대표로 모이는 것도 함께 검사합니다.
  • 화면에 쓰는 배치 수 표는 미리 세어 둔 상수입니다. N = 14를 그 자리에서 세면 0.4초가 걸려 입력할 때마다 화면이 멈추기 때문인데, 테스트가 매번 다시 세어 이 표와 대조하므로 값이 굳어질 일은 없습니다.
  • 판은 16까지, 배치 수는 14까지 다룹니다. 회전·반사를 뺀 개수는 해를 모두 만들어야 해서 12까지입니다. 「몇 번째 배치」로 골라 볼 수 있는 것은 앞 200가지입니다.

함께 보면 좋은 도구

마지막 검증: 2026년 9월 1일 · 결과는 참고용 추정치입니다.