도전
이 과제의 목표는 표준 영국 QWERTY 키보드의 한 줄만 사용하여 주어진 문자열을 입력 할 수 있는지 확인하는 것입니다.
이것은 code golf
바이트 단위의 최단 솔루션이 승리합니다!
IO
입력은 32-126의 ASCII 10 진수 범위에서 0 개 이상의 문자로 구성된 단일 문자열입니다. 이 과제를 위해 빈 문자열은 입력 할 필요가 없으므로 한 줄로 입력 할 수 있다고 가정 할 수 있습니다.
입력을 문자열, 문자 목록 또는 해당 언어 형식으로 사용할 수 있습니다.
출력은 단일 행을 사용하여 입력 할 수있는 모든 문자열에 대해 정확한 값이거나, 그렇지 않은 문자열에 대해서는 거짓이어야합니다.
키보드 레이아웃
아래의 표준 키보드 레이아웃에 대한 모호성을 명확히하기 위해 교대 상단 키 (shift를 사용하여 액세스)를 포함하여 각 줄에서 사용할 수있는 키 목록이 있습니다.
- 1 호선
- 표준:
`1234567890-=
- 표준:
- 2 호선
- 표준:
qwertyuiop[]
- 표준:
- 3 호선
- 표준:
asdfghjkl;'#
- 대문자 :
ASDFGHJKL
- 스페셜 : Caps Lock
- 표준:
- 4 호선
- 표준:
\zxcvbnm,./
- 번갈아 하는:
|<>?
- 대문자 :
ZXCVBNM
- 스페셜 : 교대
- 표준:
- 5 호선
- 스페셜 : 스페이스 바
Shift 키가 같은 줄에있는 경우에만 대체 상위 키를 누를 수 있으며 대문자 키는 Caps Lock 또는 Shift를 통해서만 액세스 할 수 있습니다. 하나의 키보드 라인 만 사용할 수 있습니다!
테스트 사례
-> true (empty string)
45-2=43 -> true (line 1)
qwerty -> true (line 2)
tryitout -> true (line 2)
Qwerty -> false (no shift or caps on line 2)
#sad -> true (line 3)
AsDf -> true (caps lock used)
@sDF -> false (no shift for alternate upper)
zxcvbn? -> true (line 4)
zxc vbn -> false (spacebar on separate line)
123abc -> false (multiple lines)
-> true (just space bar)
!!! -> false (exclamation marks cannot be printed by a single line)