Inspiriert von Zeichnen Sie eine Zeitleiste .
Geben Sie anhand einer Zeitleiste mit Ereignissen das Datum für jedes Ereignis aus.
Eine Zeitleiste wird im Formular angegeben
2000
--AF-C-------E--D---B--
Wo die erste Zeile einen bekannten Zeitpunkt zeigt. Das bekannte Jahr ist immer das Zeichen unter der ersten Ziffer des bekannten Jahres
Sie können annehmen:
- Auf der Zeitachse selbst repräsentiert jedes Zeichen ein Jahr.
- Es wird immer mindestens eine Veranstaltung geben
- Die Ereignisse müssen nicht in Ordnung sein
- Sie können davon ausgehen, dass jedes Zeichen im Bereich zwischen
A
und das am weitesten entfernte Zeichen vorhanden ist - Es werden höchstens 26 Veranstaltungen stattfinden
- Der bekannte Punkt hat rechts keine Polsterung
- Sowohl am bekannten Punkt als auch am Ausgang können negative Zahlen vorhanden sein
- Sie müssen keine Zahlen verarbeiten, die größer als 2 ^ 32 sind
- Sie müssen keine Bereiche verarbeiten, die größer als 2 ^ 8 sind
- Sie können Eingaben als Kleinbuchstaben anstelle von Großbuchstaben verwenden
Sie sollten ein Programm schreiben, das eine Zeitleiste in dieser Form verwendet und die Stichtage in der angegebenen Reihenfolge ausgibt (A, B, C, D ...).
Sie können in einer bequemen Form ausgeben, müssen jedoch Eingaben in dem angegebenen Format vornehmen.
Testfälle:
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]
Antworten:
Pyth, 16 Bytes
Übernimmt die Eingabe als Kleinbuchstaben anstelle von Großbuchstaben.
quelle
05AB1E ,
1918 BytesCode:
Erläuterung:
Probieren Sie es online aus!
Verwendet die CP-1252- Codierung.
quelle
JavaScript (ES6), 72
Prüfung
quelle
Bash + Coreutils, 68
Zeile 1 wird als Befehlszeilenoption in Anführungszeichen und Zeile 2 von STDIN eingegeben:
quelle
Perl, 58 + 1 = 59 Bytes
Nervenzusammenbruch:
Benötigt
-n
und kostenlos-M5.010
:quelle
Pyth, 22 Bytes
Nein, ich habe dies nicht geschrieben, bevor ich die Herausforderung gepostet habe.
Erläuterung:
Probieren Sie es hier aus
quelle
Python 3, 118
Mann, heute ist der Tag der langen Python-Antworten.
quelle
Im Ernst, 40 Bytes
Probieren Sie es online aus!
Erklärung später nach weiterem Golfen.
quelle
Perl,
80797167 BytesDanke an @ dev-null für 12 Bytes!
quelle