{{위키데이터 속성 추적}}
{{Chess diagram|=
| tright
| 해 중 하나.
|= 
|  |  |  |ql|  |  |  |  |=
|  |  |  |  |  |  |ql|  |=
|  |  |ql|  |  |  |  |  |=
|  |  |  |  |  |  |  |ql|=
|  |ql|  |  |  |  |  |  |=
|  |  |  |  |ql|  |  |  |=
|ql|  |  |  |  |  |  |  |=
|  |  |  |  |  |ql|  |  |=
|
}}
'''8 퀸 문제'''는 8x8크기의 체스판에 [[퀸 (체스)|퀸]]을 8개 배치하는 문제이다. 1848년 [[막스 베첼]]이 처음 제안하였다. 이 문제를 일반화하면 NxN 크기의 체스판에 [[퀸 (체스)|퀸]]을 N개 배치하는 N 퀸 문제가 된다. 구성적인 해법으로 N이 2,3인경우를 제외하고 해를 찾을 수 있다.

== 해 ==
8x8의 해를 나열하면 아래와 같다.

{|
|-
|
{{체스판|=
| tright
| 해 1
|=
|  |  |  |ql|  |  |  |  |=
|  |  |  |  |  |  |ql|  |=
|  |  |ql|  |  |  |  |  |=
|  |  |  |  |  |  |  |ql|=
|  |ql|  |  |  |  |  |  |=
|  |  |  |  |ql|  |  |  |=
|ql|  |  |  |  |  |  |  |=
|  |  |  |  |  |ql|  |  |=
|
}}
|
{{체스판|=
| tright
| 해 2
|=
|  |  |  |  |ql|  |  |  |=
|  |ql|  |  |  |  |  |  |=
|  |  |  |ql|  |  |  |  |=
|  |  |  |  |  |  |ql|  |=
|  |  |ql|  |  |  |  |  |=
|  |  |  |  |  |  |  |ql|=
|  |  |  |  |  |ql|  |  |=
|ql|  |  |  |  |  |  |  |=
|
}}
|
{{체스판|=
| tright
| 해 3
|=
|  |  |  |ql|  |  |  |  |=
|  |ql|  |  |  |  |  |  |=
|  |  |  |  |  |  |ql|  |=
|  |  |ql|  |  |  |  |  |=
|  |  |  |  |  |ql|  |  |=
|  |  |  |  |  |  |  |ql|=
|  |  |  |  |ql|  |  |  |=
|ql|  |  |  |  |  |  |  |=
|
}}
|-
|
{{체스판|=
| tright
| 해 4
|=
|  |  |  |ql|  |  |  |  |=
|  |  |  |  |  |ql|  |  |=
|  |  |  |  |  |  |  |ql|=
|  |  |ql|  |  |  |  |  |=
|ql|  |  |  |  |  |  |  |=
|  |  |  |  |  |  |ql|  |=
|  |  |  |  |ql|  |  |  |=
|  |ql|  |  |  |  |  |  |=
|
}}
|
{{체스판|=
| tright
| 해 5
|=
|  |  |ql|  |  |  |  |  |=
|  |  |  |  |  |ql|  |  |=
|  |  |  |  |  |  |  |ql|=
|ql|  |  |  |  |  |  |  |=
|  |  |  |ql|  |  |  |  |=
|  |  |  |  |  |  |ql|  |=
|  |  |  |  |ql|  |  |  |=
|  |ql|  |  |  |  |  |  |=
|
}}
|
{{체스판|=
| tright
| 해 6
|=
|  |  |  |  |ql|  |  |  |=
|  |  |ql|  |  |  |  |  |=
|  |  |  |  |  |  |  |ql|=
|  |  |  |ql|  |  |  |  |=
|  |  |  |  |  |  |ql|  |=
|ql|  |  |  |  |  |  |  |=
|  |  |  |  |  |ql|  |  |=
|  |ql|  |  |  |  |  |  |=
|
}}
|-
|
{{체스판|=
| tright
| 해 7
|=
|  |  |  |  |ql|  |  |  |=
|  |  |  |  |  |  |ql|  |=
|  |  |  |ql|  |  |  |  |=
|ql|  |  |  |  |  |  |  |=
|  |  |ql|  |  |  |  |  |=
|  |  |  |  |  |  |  |ql|=
|  |  |  |  |  |ql|  |  |=
|  |ql|  |  |  |  |  |  |=
|
}}
|
{{체스판|=
| tright
| 해 8
|=
|  |  |  |ql|  |  |  |  |=
|ql|  |  |  |  |  |  |  |=
|  |  |  |  |ql|  |  |  |=
|  |  |  |  |  |  |  |ql|=
|  |  |  |  |  |ql|  |  |=
|  |  |ql|  |  |  |  |  |=
|  |  |  |  |  |  |ql|  |=
|  |ql|  |  |  |  |  |  |=
|
}}
|
{{체스판|=
| tright
| 해 9
|=
|  |  |ql|  |  |  |  |  |=
|  |  |  |  |  |ql|  |  |=
|  |  |  |ql|  |  |  |  |=
|ql|  |  |  |  |  |  |  |=
|  |  |  |  |  |  |  |ql|=
|  |  |  |  |ql|  |  |  |=
|  |  |  |  |  |  |ql|  |=
|  |ql|  |  |  |  |  |  |=
|
}}
|-
|
{{체스판|=
| tright
| 해 10
|=
|  |  |  |  |  |ql|  |  |=
|  |ql|  |  |  |  |  |  |=
|  |  |  |  |  |  |ql|  |=
|ql|  |  |  |  |  |  |  |=
|  |  |  |ql|  |  |  |  |=
|  |  |  |  |  |  |  |ql|=
|  |  |  |  |ql|  |  |  |=
|  |  |ql|  |  |  |  |  |=
|
}}
|
{{체스판|=
| tright
| 해 11
|=
|  |  |  |ql|  |  |  |  |=
|  |  |  |  |  |  |ql|  |=
|ql|  |  |  |  |  |  |  |=
|  |  |  |  |  |  |  |ql|=
|  |  |  |  |ql|  |  |  |=
|  |ql|  |  |  |  |  |  |=
|  |  |  |  |  |ql|  |  |=
|  |  |ql|  |  |  |  |  |=
|
}}
|
{{체스판|=
| tright
| 해 12
|=
|  |  |  |  |  |ql|  |  |=
|  |  |  |ql|  |  |  |  |=
|  |  |  |  |  |  |ql|  |=
|ql|  |  |  |  |  |  |  |=
|  |  |  |  |  |  |  |ql|=
|  |ql|  |  |  |  |  |  |=
|  |  |  |  |ql|  |  |  |=
|  |  |ql|  |  |  |  |  |=
|
}}
|}

== N 퀸 문제 ==
아래에는 ''n''개의 퀸을 ''n'' × ''n'' 판에 나타내는 해의 수를 나타내었다. 고유한 해(선대칭이나 점대칭으로 대칭인 해)는 온라인 정수열 사전에서{{OEIS|A002562}}에 일반적인 해(대칭을 구별한 해)는{{OEIS|A000170}}에 등재되어 있다.
{| class="wikitable"
!style="padding: 0em .5em;"|''n'':
!style="padding: 0em .5em;"|1
!style="padding: 0em .5em;"|2
!style="padding: 0em .5em;"|3
!style="padding: 0em .5em;"|4
!style="padding: 0em .5em;"|5
!style="padding: 0em .5em;"|6
!style="padding: 0em .5em;"|7
!style="padding: 0em .5em;"|8
!style="padding: 0em .5em;"|9
!style="padding: 0em .5em;"|10
!style="padding: 0em .5em;"|11
!style="padding: 0em .5em;"|12
!style="padding: 0em .5em;"|13
!style="padding: 0em .5em;"|14
!style="padding: 0em .5em;"|..
!style="padding: 0em .5em;"|24
!style="padding: 0em .5em;"|25
!style="padding: 0em .5em;"|26
|-
!unique:
|1
|0
|0
|1
|2
|1
|6
|12
|46
|92
|341
|1,787
|9,233
|45,752
|..
|28,439,272,956,934
|275,986,683,743,434
|2,789,712,466,510,289
|-
!distinct:
|1
|0
|0
|2
|10
|4
|40
|92
|352
|724
|2,680
|14,200
|73,712
|365,596
|..
|227,514,171,973,736
|2,207,893,435,808,352
|22,317,699,616,364,044
|}

== 연관 문제 ==
* ''' 다른 기물 사용 '''
32개의 나이트, 14개의 비숍, 8개의 룩, 16개의 킹이 필요하다.
* ''' 다른 판 모양 '''
토러스형이나 원통형 조건에 대해 생각할 수 있다. 토러스에서는 폴리아의 연구에 의해 n이 6과 서로소일 때 nxn정사각형판에 n개의 퀸을 채울 수 있다.


== 풀이 프로그램 ==
아래는 재귀적으로 해를 구성하는 [[C++]] 코드이다.
<syntaxhighlight lang="c">

#include <cm

#define MAX_SIZE 8
// 최대 MAX_SIZE queen 문제까지 해결할 수 있다.

using namespace std;

int board[MAX_SIZE];
// board[i]는 i번째 행에 퀸이 몇번째 열에 있는지 의미하는 변수이다. (행열은 서로 바뀌어도 된다.)
// 즉 board[0] = 3일때, (1,4) 혹은 (4,1) 위치에 퀸이 있다
int n;
int cnt;

void path(int y) {
	// y는 현재 몇개의 퀸이 배치되었는지를 의미하는 변수다.
	int ko;
	if( y == n ) {
		// n개의 퀸이 배치가 되었다면 이 경우는 답이다.
		cnt++;
		return;
	}
	for( int i=0; i<n; i++ ) {
		// ko는 퀸이 배치될 수 있는지를 저장하는 플래그다.
		ko = 1;
		for( int j=0; j<y; j++ ) {
			// 이미 배치가 끝난 퀸을 참고해서 i번째 칸에 퀸을 설치할 수 있는지를 확인한다.
			if( board[j] == i || abs(y-j) == abs(i-board[j]) ) {
				// j번째 줄에 있는 퀸과 같은 칸에 있거나, 대각선에 같은 곳에 있다면, i번째 칸에 대한 탐색을 중단한다.
				ko = 0;
				break;
			}
		}
		if( ko ) {
			// 여기까지 왔다면 y번째 줄에 i번째 칸에 퀸을 놔두는 것이 가능하다.
			board[y] = i;
			path(y+1);
		}
	}
}

int main() {
	int k;
	cin >> k;

	while( k-- ) {
		cin >> n;
		cnt = 0;
		path(0);

		cout << cnt << '\n';
	}

	return 0;
}
</syntaxhighlight>

아래 애니메이션을 보면 재귀적으로 해를 탐색하는 과정을 알 수 있다.

[[파일:Eight-queens-animation.gif]]
== 같이 보기 ==
* [[루크 다항식]]

[[분류:퍼즐]]
[[분류:열거조합론]]
[[분류:수학적 체스 문제]]