Wiele zegarów cyfrowych wyświetla czas za pomocą uproszczonych cyfr składających się tylko z siedmiu różnych lampek, które są włączone lub wyłączone:
Po odbiciu w poziomie cyfry 018nie zmieniają się, ponieważ są symetryczne. Również cyfry 2i 5zamień się, 2stając się 5i odwrotnie. Wszystkie pozostałe cyfry stają się nieprawidłowe po odbiciu lustrzanym.
Tak więc, biorąc pod uwagę 24-godzinny zegar cyfrowy, istnieje wiele odczytów tak, że lustrzany obraz wyświetlacza cyfrowego jest również prawidłowym odczytem zegara. Twoim zadaniem jest wyprowadzenie wszystkich takich odczytów zegara wraz z odczytami lustrzanymi.
Na przykład 22:21staje się 15:55i 00:15staje 21:00. Z drugiej strony, 12:34lub 16:27nie są już ważne, gdy są dublowane (cyfry 34679stają się nieważne), i nie są 22:22ani 18:21, ponieważ, ponieważ są tylko 24 godziny na dobę i 60 minut na godzinę, żaden rozsądny zegar nie wyświetli się 55:55lub 12:81.
Zadanie
Napisz program lub funkcję, która nie pobiera danych wejściowych i wyświetla wszystkie prawidłowe pary w porządku rosnącym, jak pokazano poniżej:
00:00 - 00:00
00:01 - 10:00
00:05 - 20:00
00:10 - 01:00
00:11 - 11:00
00:15 - 21:00
00:20 - 05:00
00:21 - 15:00
00:50 - 02:00
00:51 - 12:00
00:55 - 22:00
01:00 - 00:10
01:01 - 10:10
01:05 - 20:10
01:10 - 01:10
01:11 - 11:10
01:15 - 21:10
01:20 - 05:10
01:21 - 15:10
01:50 - 02:10
01:51 - 12:10
01:55 - 22:10
02:00 - 00:50
02:01 - 10:50
02:05 - 20:50
02:10 - 01:50
02:11 - 11:50
02:15 - 21:50
02:20 - 05:50
02:21 - 15:50
02:50 - 02:50
02:51 - 12:50
02:55 - 22:50
05:00 - 00:20
05:01 - 10:20
05:05 - 20:20
05:10 - 01:20
05:11 - 11:20
05:15 - 21:20
05:20 - 05:20
05:21 - 15:20
05:50 - 02:20
05:51 - 12:20
05:55 - 22:20
10:00 - 00:01
10:01 - 10:01
10:05 - 20:01
10:10 - 01:01
10:11 - 11:01
10:15 - 21:01
10:20 - 05:01
10:21 - 15:01
10:50 - 02:01
10:51 - 12:01
10:55 - 22:01
11:00 - 00:11
11:01 - 10:11
11:05 - 20:11
11:10 - 01:11
11:11 - 11:11
11:15 - 21:11
11:20 - 05:11
11:21 - 15:11
11:50 - 02:11
11:51 - 12:11
11:55 - 22:11
12:00 - 00:51
12:01 - 10:51
12:05 - 20:51
12:10 - 01:51
12:11 - 11:51
12:15 - 21:51
12:20 - 05:51
12:21 - 15:51
12:50 - 02:51
12:51 - 12:51
12:55 - 22:51
15:00 - 00:21
15:01 - 10:21
15:05 - 20:21
15:10 - 01:21
15:11 - 11:21
15:15 - 21:21
15:20 - 05:21
15:21 - 15:21
15:50 - 02:21
15:51 - 12:21
15:55 - 22:21
20:00 - 00:05
20:01 - 10:05
20:05 - 20:05
20:10 - 01:05
20:11 - 11:05
20:15 - 21:05
20:20 - 05:05
20:21 - 15:05
20:50 - 02:05
20:51 - 12:05
20:55 - 22:05
21:00 - 00:15
21:01 - 10:15
21:05 - 20:15
21:10 - 01:15
21:11 - 11:15
21:15 - 21:15
21:20 - 05:15
21:21 - 15:15
21:50 - 02:15
21:51 - 12:15
21:55 - 22:15
22:00 - 00:55
22:01 - 10:55
22:05 - 20:55
22:10 - 01:55
22:11 - 11:55
22:15 - 21:55
22:20 - 05:55
22:21 - 15:55
22:50 - 02:55
22:51 - 12:55
22:55 - 22:55
Końcowy lub wiodący nowy wiersz jest dozwolony. Dozwolone jest także posiadanie kilku spacji bezpośrednio przed przesunięciem linii. Czasy muszą być w formacie hh:mm, w razie potrzeby uzupełnione zerami.
To jest golf golfowy , więc wygrywa najkrótsza odpowiedź w bajtach. Jak zwykle standardowe luki są niedozwolone.
1nie jest dokładnie identyczna z odbiciem lustrzanym, ponieważ można stwierdzić, czy segmenty znajdujące się najbardziej po prawej, czy te znajdujące się po lewej stronie tworzą pionową „linię”, która składa się na cyfrę. Rozumiem, że uważamy je tutaj za identyczne.
1można je było wyśrodkować.

Stringjest tablicąChar. Jest to dopuszczalne, jeśli moja odpowiedź daje listy zChar? Typy wyglądają identycznie po wydrukowaniu gołą czcionką.