좀비 종말이오고 세상은오고 있습니다. 갑자기 누군가는 현재시, 분, 일이 걸리는 공식을 발견하고 피아노에서 연주하는 모든 좀비를 즉시 죽이는 완벽한 음표를 뱉어냅니다. 불행히도, 세계에는 피아노 연주자가 한 명 뿐이며, 음표 읽는 법을 잊어 버렸지 만 여전히 악보를 읽는 법을 알고 있습니다. 물론 이것은 매우 시간에 민감하므로 컴퓨터를 사용하는 것이 당연합니다. 1
다음과 같이 G
메모를 작성하여 직원에게 고른 음표를 고음 음자리표로 출력해야합니다.
-----
-----
|
---|-
|
--O--
-----
사양:
- 교대 라인
-----
(5 개의 대시)과 공백 라인 의 스태프를 출력해야합니다 .-----
총 5가 있습니다 . 이 직원 위에 메모를 겹쳐 야합니다. - 입력은 메모가있는 위치를 지정합니다. 입력은 다음과 같습니다
- 옵션
H
이나L
, 지정 "높은"또는 "낮음" - 피치를 지정하는
A
~ 부터의 글자G
- 선택적인
#
또는b
, 선명하거나 평평하게 지정합니다.
- 옵션
- "노트"는 다음과 같이 정의됩니다.
- 하나의
O
(자본 O)는 메모 대신에 직원의 중간에 정렬되었습니다. (맨 위 줄은HF
(높은 F)이고 맨 아래 줄은E
(보통 E)입니다.) - 3
|
초 (세로 막대), 줄기 :- 메모가 중간 줄 (
B
) 이상인 경우 메모 왼쪽의 한 칸, 아래로 내려가는 음 (아래 쪽 한 칸 시작 ) 또는 - 음표가 중간 선 아래에있는 경우 음표 오른쪽에 한 칸 띄우고 위쪽으로 이동합니다 (음표 위 한 칸 시작).
- 메모가 중간 줄 (
#
또는b
입력에 지정된 경우 노트의 바로 왼쪽에 하나 개의 공간.
- 하나의
- 노트가 너무 높거나 낮은 경우 원장 선을 추가해야합니다. 이 선들은
---
(5와 반대로 3 개의 대시 폭만) 노트가 원장 위 또는 위 (아래쪽 원장 선의 경우)의 원장 선인 경우에만 나타납니다. - 원하는 공간을 원하는 곳에 배치 할 수 있습니다. 예를 들어, 문자를 저장하는 데 도움이되는 경우 빈 줄에 공백이 있거나 원장 줄 뒤에 공백이있을 수 있습니다.
다음은 라인 옆에 모든 노트 이름이있는 스펙을보다 쉽게 이해하기위한 시각화입니다.
HB
--- HA
HG
----- HF
HE
----- HD
HC
----- B
A
----- G
F
----- E
D
--- C
LB
--- LA
LG
--- LF
... (bottom cut off for brevity, you get the idea anyway)
다음은 프로그램을 테스트하는 데 사용할 수있는 몇 가지 예입니다.
입력: HG#
#O
-|---
|
-|---
-----
-----
-----
입력: LAb
-----
-----
-----
-----
-----
|
--|
|
bO-
입력: HB
O
|--
|
-|---
-----
-----
-----
-----
입력: C
-----
-----
-----
-----
|
---|-
|
-O-
이것은 code-golf 이므로 바이트 단위의 가장 짧은 코드가 승리합니다!
1 : 가장 현실적인 박람회 회피! :-피
#
또는b
오히려 왼쪽보다 노트의 오른쪽에; 정말 필요한 것입니까?