Objetivo
O código Morse é frequentemente representado como som. Dado um fluxo de bits que representam se o som está ativado ou desativado, traduza o fluxo em letras, números e espaços.
Específicos
- O fluxo de bits é analisado com base no comprimento dos bits ON / OFF repetidos.
- 1 bit ON é um ponto
- 3 bits ON são um traço
- 1 bit OFF delimita pontos e traços
- 3 bits OFF delimita caracteres
- 7 bits OFF delimita palavras (espaço)
- A entrada pode ser uma sequência ou matriz. Apenas dois caracteres / valores exclusivos de sua escolha são permitidos na entrada. (por exemplo, 0/1, verdadeiro / falso, vírgula / espaço)
- A saída retorna uma sequência ou é impressa na saída padrão.
Exemplo
Input: 101010100010001011101010001011101010001110111011100000001011101110001110111011100010111010001011101010001110101
Analysis: \--H--/ E \---L---/ \---L---/ \----O----/\-- --/\---W---/ \----O----/ \--R--/ \---L---/ \--D--/
Output: HELLO WORLD
Suposições
- O fluxo sempre inicia e termina com um bit ON.
- Não há espaços em branco à esquerda ou à direita.
- A entrada é sempre válida.
- Todas as letras (sem distinção entre maiúsculas e minúsculas) e dígitos são suportados.
Casos de teste
101010100010001011101010001011101010001110111011100000001011101110001110111011100010111010001011101010001110101
HELLO WORLD
10100000001011100011101110000000101110000000101011101000101000101010001010101
I AM A FISH
1010111011101110001110111011101110111000101110111011101110001110111010101
2017
101010001110111011100010101
SOS
Pontuação
Isso é código de golfe. O código de contagem de bytes mais baixo a esta hora da próxima semana vence.