Недавно археологи обнаружили странную находку, предположительно летопись
некоторых событий, которая может раскрыть берляндским историкам причину исчезновения
столь могущественного общества — стопку из дюжины блестящих тонких дисков из
неизвестного материала, нанизанных на алмазный стержень. На верхнем диске ученые
обнаружили три числа, каждое из которых состоит из двух цифр. Ученые предположили, что на
диске записана дата конца великой цивилизации.
После анализа дисков было установлено, что они использовались в XXI веке по
летоисчислению, использовавшемуся древней цивилизацией — так называемому
«григорианскому» календарю — год продолжительностью 365 дней, разделялся по нему на
двенадцать месяцев. Второй месяц в году имел продолжительность двадцать восемь дней,
первый, третий, пятый, седьмой, восьмой, десятый и двенадцатый — тридцать один день,
остальные — тридцать дней. В особые года, номер которых делился на четыре и не делился на
сто, либо делился на четыреста, второй месяц длился двадцать девять дней. Веком номер i
назывался период с 100 × (i − 1) + 1 года по 100 × i.
Так как достоверно не известно, в каком порядке представители древней цивилизации
записывали даты, вам, как главному специалисту по григорианскому календарю, поручили
провести исследование — установить, каким датам в XXI веке могла соответствовать надпись,
в предположении, что одно из чисел соответствует дню в месяце (дни в каждом месяце
нумеровались с единицы), еще одно из чисел — номеру месяца (месяцы также нумеровались с
единицы), и еще одно число — последним двум цифрам года в XXI веке григорианского
календаря.
По заданной надписи на диске выясните, каким датам в XXI веке она могла
соответствовать.
Формат входного файла
Во входном файле в формате aa/bb/cc записаны числа с диска.
Формат выходного файла
В выходной файл в произвольном порядке выведите все корректные даты dd/mm/yy в
XXI веке, где dd соответствует номеру дня, mm – номеру месяца, yy — номеру года, причем
числа, соответствующие dd, mm и yy являются перестановками чисел с диска.
В случае, если никакая перестановка исходных чисел не является корректной датой XX
begin
var a:=ArrRandom(100,-10,10);
a.Println;
Writeln(a.Where(x->x>0).Count,' положительных, ',
a.Where(x->x<0).Count,' отрицательных')
end.
Тестовое решение:
4 -6 0 8 2 -2 -1 -8 -6 8 -3 7 4 -7 -5 9 0 -3 -7 1 0 -4 6 3 8 -10 4 9 3 5 8 5 5 8 10 4 -8 3 8 8 -9 2 7 -8 -7 -5 2 -9 0 9 -7 7 -2 -6 7 -2 -1 7 -10 2 4 1 -1 0 10 3 -8 6 -6 2 6 7 -1 -4 -1 8 0 3 0 2 -2 2 -1 5 1 -9 -4 1 -9 1 -6 -5 3 -4 -7 1 -7 -3 -7 1
51 положительных, 42 отрицательных
Для данной сортировки используем алгоритм сортировки слиянием
В начале разбиваем арбузы на 2 группы по 2Каждую группу взвешиваем и сортируем (т.е. всего 2 взвешивания)Теперь собираем вместе, сравниваем сначала более легкие арбузы и находим самый легкий (всего 3 взвешивания)Теперь сравниваем тяжелый арбуз, что в группе с самым легким и более легкий из другой группы, и определяем второй по легкости (всего 4 взвешивания)Потом взвешиваем оставшиеся арбузы и докладываем их по порядку (всего 5 взвешивания)