Escrita Musical

1365
Tempo Limite: 3 | Nível: 5

Descrição

Autor: Daniel "Pufe" Ribeiro

Giovane gosta muito de música e fez um bot para transformar em música tudo o que ele digita, criando instantaneamente uma trilha sonora bem original enquanto ele faz suas tarefas do trabalho. O caractere de espaço em branco (valor ASCII 32) executa pausas, ou seja, momentos de silêncio. Todos os outros caracteres executam notas.

A música ocidental padrão utiliza 12 notas: C, C#, D, D#, E, F, F#, G, G#, A, A#, B. Mas as notas se repetem em "oitavas" diferentes, e representamos o número da oitava logo após o nome da nota, por exemplo F#3. Pausas são representadas por Z.

A nota mais grave que o bot do Giovane executa é C2, e a mais aguda é B4, totalizando 36 notas distintas. Giovane atribuiu em sequência uma nota para cada caractere ASCII, começando em '!' (valor ASCII 33) como sendo C2. Depois de atribuir B4 para algum caractere, ele volta para C2.

Giovane agora quer aprender a tocar na guitarra algumas músicas que ele digitou durante o dia de trabalho, e precisa converter o que ele digitou para notação padrão de música.


Entrada

A entrada contém vários casos de teste. A primeira linha contém um único inteiro que indica quantos casos de teste seguem. Cada caso de teste consiste de uma única linha com caracteres ASCII imprimíveis. Nenhuma linha da entrada irá começar ou terminar com espaços


Saída

Para cada caso de teste, imprima a sequência de notas que o bot toca na notação padrão de música. Imprima todas as notas em uma única linha, com um espaço em branco entre duas notas. Imprima uma linha em branco após cada caso de teste inclusive o último.


Exemplos de Entrada Exemplos de Saída

3
console.log("oi!");
__presence_away
exemplo  com  espacos

F#4 F#2 F2 A#2 F#2 D#2 G#4 C#3 D#2 F#2 A#4 G2 C#2 F#2 C2 C2 C#2 G#2 D4

D4 D4 G2 A2 G#4 A#2 G#4 F2 F#4 G#4 D4 E4 D3 E4 E3

G#4 D#3 G#4 E2 G2 D#2 F#2 Z Z F#4 F#2 E2 Z Z G#4 A#2 G2 E4 F#4 F#2 A#2

Efetue Login ou Cadastre-se para submeter uma solução.



Competição: Elixir Day 2