체스에서는 Fool 's Mate로 4 번의 움직임 (각각 2 번) 후에 게임이 끝날 수 있습니다.
당신의 목표는 Fool 's Halma 의 메이트를 찾는 것입니다 : 할 마의 2 인용 게임은 플레이 횟수를 최소화합니다.
10 개의 56 개 보드 상태가 있으며 분기 요소가 1000을 능가하는 것을 보았으므로 최적의 솔루션을 찾지 못할 가능성은 없습니다. 대신, 최상의 솔루션을 찾으려고 노력하고 있습니다.
이동 목록과 해당 이동을 생성하는 데 사용한 코드를 제출해야합니다.
게임 설명
할 마는 중국 체커와 비슷하지만 16 * 16 정사각형 보드에서 뛰었습니다.
처음에 보드는 다음과 같습니다.
게임의 목표는 모든 조각을 상대방 조각의 시작 위치로 옮기는 것입니다.
플레이어는 차례에 다음을 수행 할 수 있습니다.
차례를 통과
조각 중 하나를 인접한 빈 공간으로 옮깁니다. 인접한 공간에는 대각선이 포함됩니다.
그 / 그녀의 조각 중 하나를 가져 와서 여러 번 다음을 수행하십시오. 조각을 인접한 조각 위로 뛰어 넘고 점프 한 조각 반대편 공간에 착륙하십시오.
다음은 두 번째 유형의 이동을 설명하는 예입니다.
규칙
합법적 인 움직임 목록을 제출하면 게임이 종료됩니다.
목록을 생성하는 데 사용한 코드를 제출하십시오.
다른 사람의 코드에서 더 나은 결과를 얻으려면 결과를 주석에 게시하거나 새 결과로 게시물을 편집하십시오.
각 이동은 None
회전을 통과하거나 (x1,y1,x2,y2)
조각을 이동해야합니다. 조각의 위치 (x1,y1)
는 이동할 위치이며 해당 조각 (x2,y2)
의 대상입니다 (점프 이동의 경우 중간 좌표는 무시). 좌표 (0,0)
는 왼쪽 상단에서 시작 합니다. x 좌표는 오른쪽으로 증가하고 y 좌표는 아래쪽으로 증가합니다. 이동은 개행으로 분리해야합니다.
당신이 사용할 수있는 이 파이썬 스크립트를 귀하의 움직임을 확인 할 수 있습니다. 의 python halma_verify.py < file
이동을 확인하는 데 사용 합니다 file
.
최단 목록이 이깁니다.