키보드에 문제가 있습니다. Shift키는 자신의 마음을 가지고 있습니다. 문자를 입력 할 때마다 문자가 이동되는지 여부를 알 수 없습니다 (50-50이지만). 표준 문자 키 외에 키보드의 아무것도 작동하지 않습니다. 마우스 나 다른 입력 수단이 없습니다.
어떻게 든 문제를 해결하는 유일한 방법은 Dear Computer, please stop giving me shift!
stdout으로 출력하는 프로그램을 작성하는 것입니다 . 운 좋게 IDE가 열려 있고 프로그램을 실행할 수 있지만, 입력 할 때 어떤 문자가 바뀌는 지 알 수 없습니다.
첫 번째 시도에서 가장 가능성이 높은 프로그램을 작성하기 위해 어떤 키 누르기 순서를 사용 하시겠습니까?
세부
표준 QWERTY 키보드를 사용하고 있으므로 50 개의 문자 키를 누를 수 있습니다.
시프트되지 않은 버전 (47 만) :
`1234567890-=qwertyuiop[]\asdfghjkl;'zxcvbnm,./
시프트 된 버전 (47 만) :
~!@#$%^&*()_+QWERTYUIOP{}|ASDFGHJKL:"ZXCVBNM<>?
마지막 3 키는 Enter, Tab,와 Space같은이 이동하고 시프트되지되는.
이 문자들 중 N 개의 시퀀스에는 잘못된 키보드로 입력 한 경우 2 개의 N-(공백 문자 수) 이 출력 될 수 있습니다. 예를 들어, 입력은 A Space m굴복 수도
a m
또는 A m
또는 a M
또는 A M
.
이 문자를 프로그램에 작성하고 2N-(공백 문자 수) 가능한 시프트 조합을 모두보십시오. Dear Computer, please stop giving me shift!
더 좋은 조합을 만들 수록 더 좋습니다. 점수는 작업 조합 (유효한 프로그램) 수를 총 조합 수로 나눈 값입니다. 가장 높은 점수가 이깁니다.
노트
- 유효한 프로그램의 경우 정확하게 인쇄
Dear Computer, please stop giving me shift!
하고 stdout에 인쇄 하는 것이 유일한 부작용은 아닙니다. - 유효한 프로그램은 입력하지 않아야합니다.
- 잘못된 프로그램은 무엇이든 할 수 있습니다.
- 주석은 어디에서나 사용될 수 있습니다.
- 100 % 점수를 얻는 것이 (상대적으로) 사소하기 때문에 공백 답변은 이길 수 없습니다. 당신은 여전히 재미를 위해 공백 솔루션을 제출할 수 있습니다.
- 프로그램은 최대 1024 자 여야합니다.
업데이트 : 더 복잡한 답변을 허용하도록 변경 Stop giving me shift!
되었습니다 Dear Computer, please stop giving me shift!
. 원하는 경우 기존 답변이 그대로 유지 될 수 있습니다.