Павел уже давно не играет в АСМ и не участвует ни в обучении команд, ни в подготовке задач.
Все дело в том, что его волнуют куда более глобальные вопросы — Павел размышляет об образовании в целом.
Его мысли заняты этим все время, но беда в том, что постоянно приходится отвлекаться на мелочи!
Вот возьмём, к примеру, микроволновку.
Во-первых, она не даёт возможность указать точное до секунд время разогрева пищи, а секунды в этом вопросе играют ключевую роль!
Поэтому Павел вынужден ставить минимальное возможное время, превышающее нужное, и внимательно следить за таймером, чтобы выключить разогрев в правильный момент.
Во-вторых, как выяснилось, циферблат микроволновки барахлит — при отображении времени могут не прорисовываться случайные сегменты цифр.
В результате остановить разогрев вовремя практически невозможно — при неисправном циферблате Павел не может определить, что показывает таймер в каждый момент времени.
Помогите Павлу — напишите программу, восстанавливающую реальные показания таймера.
Исходные данные
В первой строке дано число n (1 ≤ n ≤ 100) — количество показаний таймера, которые зафиксировал Павел.
В следующих строках описано n показаний таймера. Описание каждого показания состоит из 3 строк длины 17 и кодирует значение таймера в формате ММ:СС (минуты и секунды).
Каждая цифра из показаний таймера кодируется 9 символами: по три символа в каждой из 3 строк.
Старшую цифру минут кодируют символы в позициях 1−3 (здесь и далее позиции нумеруются с 1), младшую цифру минут — символы в позициях 5−7,
старшую цифру секунд — символы в позициях 11−13, младшую цифру секунд — символы в позициях 15−17.
Для кодирования цифр используются символы ’_’ (нижнее подчёркивание, десятичный ASCII-код 95), ’|’ (вертикальная черта, десятичный ASCII-код 124) и ’.’ (точка, десятичный ASCII-код 46).
Ниже приведены описания кодов всех девяти цифр, когда все сегменты прорисованы.
._. ... ._. ._. ... ._. ._. ._. ._. ._.
|.| ..| ._| ._| |_| |_. |_. ..| |_| |_|
|_| ..| |_. ._| ..| ._| |_| ..| |_| ._|
На девятой позиции второй и третьей строки показания таймера записан символ ’*’ (звёздочка, десятичный ASCII-код 42), а во всех остальных позициях, не упомянутых выше, записана точка.
Если на циферблате не прорисовался некоторый сегмент цифры, то в её закодированном
представлении соответствующий символ будет заменён точкой (сегменты, кодирующиеся точкой, не могут не прорисоваться).
Результат
Выведите n строк в формате MM:CC, представляющих собой восстановленную последовательность значений таймера.
i-я строка должна соответствовать i-му показанию и должна представлять собой корректное значение времени в диапазоне от 00:00 до 59:59.
Каждое следующее показание должно быть строго меньше предыдущего.
Если существует несколько возможных ответов, выведите любой.
Гарантируется, что хотя бы одна корректная последовательность существует.
Пример
исходные данные | результат |
---|
2
._..._........._.
|...._|.*...|.._|
|_|.._..*...|.|..
....._....._..._.
|.|...|.*.|.|.._.
|.|.|_..*.|_|.._.
| 03:12
00:05
|
Автор задачи: Павел Егоров, подготовка — Иван Бурмистров