410520: GYM104033 5 Надпись на табло

Memory Limit:0 MB Time Limit:0 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

5. Надпись на таблоограничение по времени на тест1 секундаограничение по памяти на тест256 мегабайтвводстандартный вводвыводстандартный вывод

Вы получили доступ к одной из камер наблюдения в особо секретной огранизации. В зоне видимости камеры находится табло, с которого вы постоянно считываете информацию. Теперь вам нужно написать программу, которая по состоянию табло определяет, какая буква изображена на нём в данный момент. Табло представляет из себя квадратную таблицу, разбитую на $$$n\times n$$$ равных квадратных светодиодов. Каждый диод либо включён, либо выключен. Введём систему координат, направив ось $$$OX$$$ вправо, а ось $$$OY$$$ — вверх, приняв сторону диода равной 1.

На табло могут быть изображены только следующие буквы:

  • I — прямоугольник из горящих диодов.
  • O — прямоугольник из горящих диодов с углами $$$(x_1, y_1)$$$ и $$$(x_2, y_2)$$$, внутри которого есть прямоугольник из выключенных диодов с координатами углов $$$(x_3, y_3)$$$ и $$$(x_4, y_4)$$$. При этом границы выключенного прямоугольника не должны касаться внешнего, то есть $$$x_1 < x_3 < x_4 < x_2$$$ и $$$y_1 < y_3 < y_4 < y_2$$$.
  • C — прямоугольник из горящих диодов с углами $$$(x_1, y_1)$$$ и $$$(x_2, y_2)$$$, внутри которого есть прямоугольник из выключенных диодов с координатами углов $$$(x_3, y_3)$$$ и $$$(x_4, y_4)$$$. При этом правая граница выключенного прямоугольника находится на правой границе внешнего прямоугольника, то есть $$$x_1 < x_3 < x_4 = x_2$$$ и $$$y_1 < y_3 < y_4 < y_2$$$.

  • L — прямоугольник из горящих диодов с углами $$$(x_1, y_1)$$$ и $$$(x_2, y_2)$$$, внутри которого есть прямоугольник из выключенных диодов с координатами углов $$$(x_3, y_3)$$$ и $$$(x_4, y_4)$$$. При этом правые верхние углы выключенного прямоугольника и внешнего прямоугольника совпадают, то есть $$$x_1 < x_3 < x_4 = x_2$$$ и $$$y_1 < y_3 < y_4 = y_2$$$.
  • H — прямоугольник из горящих диодов с углами $$$(x_1, y_1)$$$ и $$$(x_2, y_2)$$$, внутри которого находятся 2 прямоугольника из выключенных диодов с координатами углов $$$(x_3, y_3)$$$, $$$(x_4, y_4)$$$ у первого и $$$(x_5, y_5)$$$, $$$(x_6, y_6)$$$ у второго. При этом выключенные прямоугольники должны иметь одинаковую ширину, находиться строго один под другим, один прямоугольник должен касаться верхней стороны, а другой прямоугольник должен касаться нижней стороны внешнего прямоугольника, то есть $$$x_1 < x_3 = x_5 < x_4 = x_6 < x_2$$$ и $$$y_1 = y_3 < y_4 < y_5 < y_6 = y_2$$$.

  • P — прямоугольник из горящих диодов с углами $$$(x_1, y_1)$$$ и $$$(x_2, y_2)$$$, внутри которого находятся 2 прямоугольника из выключенных диодов с координатами углов $$$(x_3, y_3)$$$, $$$(x_4, y_4)$$$ у первого и $$$(x_5, y_5)$$$, $$$(x_6, y_6)$$$ у второго. При этом правый нижний угол первого выключенного прямоугольника должен совпадать с правым нижним углом внешнего прямоугольника, а другой выключенный прямоугольник должен находиться строго выше и не касаться границ других прямоугольников, также левые границы двух выключенных прямоугольников должны совпадать, то есть $$$x_1 < x_3 = x_5 < x_6 < x_4 = x_2$$$ и $$$y_1 = y_3 < y_4 < y_5 < y_6 < y_2$$$.

  • Любое другое состояние табло считается буквой X.

По виду табло определите, какая буква на нём изображена.

Входные данные

В первой строке входных данных находится одно число $$$n$$$ ($$$1 \le n \le 10$$$) — сторона табло.

В следующих $$$n$$$ строках находятся строки длины $$$n$$$ из символов «.» и «#» — строки таблицы. «.» обозначает выключенный квадратный диод табло, а «#» — горящий.

Выходные данные

Программа должна вывести единственный символ: если данная таблица подходит под одно из описаний букв I, O, C, L, H, P, то выведите её (все буквы — английские). Если же данная таблица не подходит ни под какие условия, то выведите X.

ПримерыВходные данные
4
.##.
.##.
.##.
....
Выходные данные
I
Входные данные
5
#...#
.#.#.
..#..
.#.#.
#...#
Выходные данные
X

加入题单

算法标签: