Inspirado por Desenhe uma linha do tempo .
Dada uma linha do tempo dos eventos, insira a data de cada evento.
Uma linha do tempo será fornecida no formulário
2000
--AF-C-------E--D---B--
Onde a primeira linha mostra um ponto conhecido no tempo. O ano conhecido é sempre o caractere abaixo do primeiro dígito do ano conhecido
Você pode assumir:
- Na própria linha do tempo, cada caractere representa um ano.
- Sempre haverá pelo menos um evento
- Os eventos não precisam estar em ordem
- Você pode assumir que todos os caracteres no intervalo entre
A
e o caractere mais distante está presente - Haverá no máximo 26 eventos
- O ponto conhecido não terá nenhum preenchimento à direita
- Pode haver números negativos no ponto conhecido e na saída
- Você não precisará lidar com números maiores que 2 ^ 32
- Você não precisará lidar com intervalos maiores que 2 ^ 8
- Você pode receber a entrada como letras minúsculas em vez de maiúsculas
Você deve escrever um programa que use uma linha do tempo neste formulário e produza as datas principais em ordem (A, B, C, D ...)
Você pode imprimir de uma forma conveniente, mas deve receber a entrada no formato fornecido.
Casos de teste:
2000
--AF-C-------E--D---B--
[1998, 2016, 2001, 2012, 2009, 1999]
10
--C-AB--D
[9, 10, 7, 13]
0
--ABCDEFG--
[-3, -2, -1, 0, 1, 2, 3]
5
--ABCDEFG--
[-3, -2, -1, 0, 1, 2, 3]
Respostas:
Pitão, 16 bytes
Recebe a entrada como letras minúsculas em vez de maiúsculas.
fonte
05AB1E ,
1918 bytesCódigo:
Explicação:
Experimente online!
Usa a codificação CP-1252 .
fonte
JavaScript (ES6), 72
Teste
fonte
Bash + coreutils, 68
A linha 1 é inserida como uma opção de linha de comando citada e a linha 2 é inserida no STDIN:
fonte
Perl, 58 + 1 = 59 bytes
Demolir:
Requer
-n
e grátis-M5.010
:fonte
Pitão, 22 bytes
Não, eu não escrevi isso antes de postar o desafio.
Explicação:
Experimente aqui
fonte
Python 3, 118
Cara, hoje é o dia de longas respostas em Python.
fonte
Sério, 40 bytes
Experimente online!
Explicação para vir mais tarde após mais golfe.
fonte
Perl,
80797167 bytesObrigado a @ dev-null por 12 bytes!
fonte