왼쪽 상단에서 시작하는 헬리콥터가 지상으로 내려갑니다 (이 질문의 목적을 위해 2D 공간에서). 자동 조종 장치 모드와 수동 모드가 있습니다.
자동 조종 장치 모드는 다음과 같이 작동합니다.
- 바로 아래 공간이 비어 있으면 그 공간으로 내립니다.
- 그렇지 않으면 단계를 완전히 무작위로 왼쪽 또는 오른쪽으로 이동하십시오. (이 방법으로 여러 단계를 이동할 수 있습니다.)
그리고 땅에 닿을 때까지이 두 단계를 계속 반복합니다. 수동 모드는 더 똑똑하고 위쪽으로 이동하거나 숙련 된 조작이 필요한 경우에도 최적의 접지 경로를 찾을 수 있습니다.
당신의 임무는 여부를 결정하는 것입니다
- 자동 조종 장치는 주어진 시나리오에서 통과합니다.
- 주어진 시나리오에서 자동 조종 장치가 실패 할 수 있습니다.
- 자동 조종 장치는 실패하지만 수동 모드는 통과하거나
- 두 모드 모두 실패합니다 (지상 경로가 유효하지 않음).
입력
- 여유 공간과 차단 된 공간을 나타내는 두 개의 다른 문자를 사용하여 1d 또는 2d 비어 있지 않은 배열로 시나리오가 제공됩니다. 문장 부호는 선택 사항입니다.
- 선택 사항 : 배열의 크기
산출
발생한 사례를 나타내는 사전 정의 된 4 개의 문자 중 하나입니다.
샘플 데이터
입력에 0 (빈) 및 1 (차단), 출력에 1 2 3 4 사용 (위에 번호가 매겨 짐)
0 0 0 0
0 1 0 0
0 0 0 1
1 1 0 0
산출: 1
0 0 1 0
1 0 0 1
0 0 0 0
0 1 1 0
0 0 0 1
출력 : 2
(4 행에서 헬리콥터가 1을 만나고, 자동 조종 장치 모드 인 경우 5 행의 끝에 트랩 될 수 있습니다)
0 0 0 1 0
0 1 1 0 0
0 1 0 0 0
0 0 0 1 0
1 1 1 1 0
출력 : 3
(위로 이동해야하므로 자동 조종 장치가 실패 함)
1 0 0
0 0 0
산출: 4
0 0 0 0 1
1 1 1 0 0
1 0 0 1 0
0 1 0 0 0
0 0 1 1 1
산출: 4
@ MartinBüttner 님. 부수적으로, 사람들이 샌드 박스에 게시하거나 직접 게시하고 오류를 수정하는 것을 선호합니까? 두 번째 옵션은 더 간단하므로 인센티브가 없다면 옵션 1을 따르는 이유를 상상할 수 없습니다.
—
ghosts_in_the_code
저는 사람들이 도전에 착수하기 전에 잠재적 오류, 허점 또는 누락 된 테스트 사례에 대해 더 많은 시간을 생각할 수 있기 때문에 개인적으로 샌드 박스를 선호합니다. 누군가가 결함이있는 도전에 대한 초기 답변을 게시하면 기존 답변을 무효화하지 않고 도전을 해결할 수는 없습니다.
—
Martin Ender
또한 입력은 항상 문자입니까, 아니면 부울 / 정수기 등일 수 있습니까? 그리고 출력-정수 일 수 있습니까, 아니면 문자이어야합니까?
—
아니 Charles