천상낙원

작은 비숍 (Little Bishops)

ACM 퀴즈


비숍은 체스 게임에서 사용되는 말 가운데 하나로, 대각선 방향으로만 움직일 수 있다. 한 비숍이 다른 비숍이 움직일 수 있는 경로 위에 있으면 그 두 비숍은 "서로 공격할 수 있는 위치에 있다"고 부른다. 아래 그림에서 검은 칸은 B1이라는 비숍이 현재 공격할 수 있는 위치를 나타낸다. B1과 B2는 서로 공격할 수 있는 위치에 있지만 B2와 B3는 서로 공격할 수 없는 위치에 있다.


n과 k라는 두 정수가 주어졌을 때, n×n 체스판 위에 k개의 비숍을 서로 공격할 수 없는 위치에 배치하는 방법의 가지 수를 구하라.


입력
한 입력 파일에 여러 테스트케이스가 들어있을 수 있다. 각 테스트케이스가 한 줄을 차지하며, 각 줄마다 두 정수 n(1≤n≤8)과 k(1≤k≤n2)가 입력된다.

출력
각 테스트 케이스마다 주어진 크기의 체스판에 주어진 개수의 비숍을 서로 공격할 수 없는 위치에 배치하는 경우의 수를 출력한다. 결과는 한줄에 하나씩 출력한다. 이 값이 1015보다 작다고 가정해도 된다.

입력예
8 6
4 4
0 0

출력예
5599888
260

'ACM 퀴즈' 카테고리의 다른 글

두 색으로 칠하기 (Bicoloring)  (0) 2006.02.22
빛, 더 많은 빛 (Light, More Light)  (0) 2006.02.05
피보나치 수의 개수 (How many Fibs?)  (0) 2006.02.05