사용자는 숨기고 컴퓨터는 찾으려고 시도합니다.
먼저, 프로그램은 그리드 크기에 대한 입력을받습니다. 5x5, 10x10, 15x15 등과 같이 그리드는 항상 완벽한 정사각형이 아닙니다.
그리드는 체스 판과 같습니다.
_______________________________
| | | | | |
| A1 | | | | | A
|_____|_____|_____|_____|_____|
| | | | | |
| | B2 | | | | B
|_____|_____|_____|_____|_____|
| | | | | |
| | | C3 | | | C
|_____|_____|_____|_____|_____|
| | | | | |
| | | | D4 | | D
|_____|_____|_____|_____|_____|
| | | | | |
| | | | | E5 | E
|_____|_____|_____|_____|_____|
1 2 3 4 5
이제 사용자는 B2
(컴퓨터에 알리지 않고) 사각형을 선택합니다
컴퓨터가 사각형을 추측하기 시작합니다. 올바른 사각형을 선택하면 사용자가로 응답합니다 y
. 그렇지 않으면 타일이 선택한 방향 (N, NE, E, SE, S, SW, W)에서 방향을 입력합니다.
따라서 사용자가 B2
컴퓨터를 선택 하고 컴퓨터가 추측 C3
하면 사용자가 입력 NW
합니다.
다음은 출력 및 입력의 예입니다.
Grid?
5x5
C3?
NW
C2?
N
B2?
y
채점 :
이것은 일반적인 도전과는 조금 다르게 점수가 매겨 질 것입니다.
승자는 올바른 정사각형을 추측하는 데 가장 적은 수의 추측 (평균)을 취하는 프로그램입니다. 평균화 할 테스트 사례는 5x5에서 10x10에 가능한 모든 제곱입니다.
그러나 최대 26 행 (예 : 5x8, 6x2, 20x5 등)의 모든 그리드 패턴에서도 작동해야합니다.
JSFiddle과 같은 테스트 방법을 포함하십시오.
마지막으로 동점 일 경우 가장 짧은 프로그램이 승리합니다.
A1
컴퓨터의 추측B9
, 적절한 응답이다NW
또는W
?