Data una partitura musicale ASCII, devi essere in grado di emettere la nota e la sua lunghezza corrispondente. Il punteggio conterrà tra le 5 e le 15 note incluse ed è trascritto su un pentagramma. Un pentagramma è composto da cinque linee orizzontali composte da - (meno) caratteri separati da linee di spazi. La linea di fondo nel pentagramma è equivalente alla nota 'E'. La linea di spazi immediatamente sopra la linea di fondo indica una 'F', ed è di un passo più alto che la 'E' sotto di essa. Questo continua come di seguito. Nota che le note vanno solo su "G" prima di ricominciare da "A". Vedi sotto:
F ----------
E
D ----------
C
B ----------
A
G ----------
F
E ----------
Si noti che le lettere non sono incluse nell'input. Le note vengono sovrapposte sopra il pentagramma usando il carattere ao (minuscolo ooh) per indicare la 'testa della nota'. Questa testa della nota indica la frequenza della nota e quindi la sua rappresentazione alfabetica come sopra. Ad esempio, una nota posizionata sul punteggio come sotto indica una 'A':
----
----
----
o
----
----
Una nota, come la "A" sopra, è chiamata "nota intera" e sarebbe suonata per un intero ritmo. Altre durate possono essere indicate includendo una 'radice' che sale dalla nota e tra zero e tre 'bandiere'. Uno stelo è composto da tre | (pipe o barra verticale) impilati immediatamente sopra la testa della nota. Uno stelo senza bandiere è considerato un "quarto di nota" e suona per un quarto di battuta. Le bandiere sono caratteri \ (barra rovesciata) e mano sul lato destro dello stelo. Ogni stelo dimezza il tempo per cui viene suonata la nota. La lunghezza di ciascuna nota sarà una delle seguenti: una nota intera, una nota da un quarto, un'ottava nota, una nota sedicesima o una nota da trenta secondi. Ecco come ogni tipo di nota cercherebbe A:
--------------------
----|---|\--|\--|\--
| | |\ |\
----|---|---|---|\--
o o o o o
--------------------
--------------------
Mettere insieme più di una nota ti dà un punteggio. Ogni nota può essere considerata larga quattro caratteri, con una nota nella prima colonna di ogni blocco di quattro caratteri. Per esempio :
|\
----|\--|\----------
|\ | |\
----o---|---o---|\--
| o |
|---------------o---
|
o-------------------
--------------------
L'esempio sopra contiene le seguenti note, in ordine: una nota da un quarto 'G', una nota da trenta secondi 'D', un'ottava nota 'C', un'intera nota 'D' e una nota da sedicesima 'B'. Ogni nota nell'output deve essere nel formato lettera / lunghezza, dove lettera è AG e lunghezza è la frazione della lunghezza della nota rispetto a un'intera nota. Come eccezione, la lunghezza e / carattere non devono essere stampati se la nota è una nota intera. Ogni nota nell'output deve essere separata da un singolo spazio. Pertanto, per il punteggio precedente, il codice dovrebbe generare quanto segue:
G/4 D/32 C/8 D B/16
- Le note saranno nel seguente intervallo: EFGABCDE F. Nota che è necessario stampare solo la lettera, l'ottava viene ignorata.
- Si noti che il numero di righe di input varia da 9 a 12, poiché le note con un quarto di tempo o meno sulla riga D o superiore richiederanno più righe per essere mostrate completamente.
- In questo caso non è presente una mezza nota.
Il codice più corto vince (gli spazi bianchi non contano).
Modifica: risolto errore nella spaziatura in un input.
Alcuni input di esempio:
|\
----|\--|-------------------
|\ | |
|---|---o---------------o---
| o |\
o---------------|\--|\------
|\ |\ |\
------------|\--|\--o-------
|\ o
------------o---------------
Uscita: B / 8 C / 8 D / 8 E / 32 F / 32 G / 32 D
----------------o-------------------
o
------------o-----------------------
o
--------o---------------------------
o
----o-------------------------------
o
o-----------------------------------
Uscita: EGBDFFACE
|\
|\
|\
------------o-------|-----------
| o | |\
|---|\--------------|---|\------
| | o |\
o---|---|\--------------o---|\--
o |\ |\
--------|\------------------|---
o o
--------------------------------
Uscita: B / 4 A / 8 F / 32 F / 32 EC / 4 B / 32 F / 16