Вдохновленный Draw timeline .
Учитывая график событий, выведите дату для каждого события.
Сроки будут предоставлены в форме
2000
--AF-C-------E--D---B--
Где первая строка показывает известный момент времени. Известный год всегда является символом ниже первой цифры известного года
Вы можете предположить:
- На самой временной шкале каждый персонаж представляет один год.
- Всегда будет хотя бы одно событие
- События не должны быть в порядке
- Вы можете предположить, что каждый символ в диапазоне между
A
и самый дальний символ присутствует - Будет не более 26 событий
- Известная точка не будет иметь отступов справа
- В известной точке и на выходе могут быть отрицательные числа
- Вам не придется обрабатывать числа больше 2 ^ 32
- Вам не придется обрабатывать диапазоны больше 2 ^ 8
- Вы можете принять ввод как строчные буквы вместо прописных
Вы должны написать программу, которая берет график времени в этой форме и выводит контрольные даты в порядке (A, B, C, D ...)
Вы можете выводить данные в удобной форме, но вы должны принимать данные в указанном формате.
Тестовые случаи:
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]
Ответы:
Pyth, 16 байт
Принимает ввод в виде строчных букв вместо прописных.
источник
05AB1E ,
1918 байтКод:
Объяснение:
Попробуйте онлайн!
Использует кодировку CP-1252 .
источник
JavaScript (ES6), 72
Тест
источник
Баш + кореутилс, 68
Строка 1 вводится как опция командной строки в кавычках, а строка 2 вводится из STDIN:
источник
Perl, 58 + 1 = 59 байт
Сломать:
Требуется
-n
и бесплатный-M5.010
:источник
Pyth, 22 байта
Нет, я не писал это до того, как отправил вызов.
Объяснение:
Попробуй здесь
источник
Питон 3, 118
Человек, сегодня день длинных ответов Python.
источник
Серьезно, 40 байт
Попробуйте онлайн!
Пояснения, чтобы прийти позже после дальнейшего игры в гольф.
источник
Perl,
80797167 байтСпасибо @ dev-null за 12 байтов!
источник