장면은 다음과 같습니다
브라이언이 갑자기 흡입기를 필요로 할 때 피터는 친구 브라이언과 체육관에 있습니다. Brian은 바닥에 쓰러지기 전에 Peter에게 콤비네이션 자물쇠의 코드를 알려줍니다.
피터가 브라이언의 사물함에 도착한 후, 지시자가 가리키는 것을보고, 스튜 이는 그를 매복시키고 그의 얼굴에 후추 통조림을 뿌려서 피터를 막는다.
베드로는 자물쇠를 보지 않고 자물쇠를 열려고합니다. 그는 다이얼을 오른쪽으로 돌리기 시작하고 통과하는 동안 숫자를 세었다. 그런 다음 올바른 번호에서 다이얼을 왼쪽으로 돌리면서 카운트를 시작하고 잠금이 열릴 때까지 다이얼을 오른쪽으로 돌립니다.
도전 과제 :
Brian의 조합과 표시기 위치의 두 가지 입력을받는 기능 / 프로그램을 작성하십시오. 베드로가 세어야 할 숫자를 출력하십시오.
규칙 :
- 조합과 지표 위치는 별도의 인수 여야합니다.
- 입력은 명령 프롬프트 또는 함수 인수로 가능합니다.
- 출력은 화면에 인쇄되어야하며 그렇지 않으면 표시됩니다 (파일이 아님).
- 시작 위치가 첫 번째 숫자와 동일하지 않으며 조합의 세 숫자가 모두 고유하다고 가정하십시오.
- 아래 그림에 표시된 잠금 장치이며 가능한 숫자는 0-39입니다.
명령:
아래의 자물쇠를 열려면 일련의 지침을 따라야합니다.
- 코드를 알아야합니다. 지금은 (38, 16, 22)이라고 가정하십시오.
- 다이얼을 오른쪽으로 3 번 돌리고 (시작 번호를 3 번 통과) 첫 번째 숫자 (38)가 표시기와 정렬되면 멈 춥니 다.
- 다이얼을 왼쪽으로 완전히 돌리면서 첫 번째 숫자를 지나고 두 번째 숫자 (16)가 표시기와 일치하면 멈 춥니 다.
- 다이얼을 오른쪽으로 돌리고 세 번째 숫자 (22)가 표시와 일치하면 멈 춥니 다
- 잠금 장치를 아래로 당깁니다
예:
Input
38 16 22
33
Output
33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 39 38 39 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22
표준 코드 골프 규칙이 적용됩니다.
나중에 게시 된 솔루션은 Dennis의 답변보다 짧은 경우에도 여전히 승리 할 수 있습니다.
function combination(code){alert("Help! Someone open this locker, the combination is "+code+"!")}