АВТ
Language: Russian
English

Remote Training on Programming

Problems Online status Contests
News FAQ E-learning
For authors:
Register  ||  Login
 
Hello, Guest! Please login or register.

1686. Contest of Captains

Time Limit: 1 seconds
Memory Limit:262144KB
Points:100
View Problem Statistics Submit Problem added debug

В лагере, где летом отдыхал Вася, часто устраивали математические бои. Частью таких боёв является игра на конкурс капитанов. Суть игры состоит в следующем. Дано клетчатое поле размером M × N клеток. Двое игроков по очереди ставят крестик в свободную клетку. Проигрывает игрок, после хода которого на поле впервые образовался параллелограмм с вершинами в центрах клеток, помеченных крестиками.

Вернувшись из лагеря, Вася решил написать программу, позволяющую играть в такую игру на компьютере. Однако, у него возникли сложности с проверкой, действительно ли на поле имеется параллелограмм. Помогите ему − напишите программу, которая находит на поле параллелограмм и выводит координаты его вершин в порядке обхода.

Примечание: параллелограмм должен быть невырожденным, то есть никакие три его вершины не лежат на одной прямой.

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

В первой строке записаны через пробел числа M и N − размеры поля (2 ≤ MN ≤ 255). В следующих M строках записано по N символов '.' (точка) или 'x' (маленькая латинская буква "икс"), где символ '.' означает пустую клетку, символ 'x' означает клетку, помеченную крестиком.

Примечание: поле не обязательно получено в ходе вышеописанной игры − оно может быть заполнено крестиками произвольным образом.

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

Если параллелограмм на поле есть, то выведите восемь чисел, разделённых пробелом − координаты вершин параллелограмма в порядке обхода. Для каждой вершины вначале пишется номер строки, затем − номер столбца. Строки и столбцы нумеруются с единицы.

Если на поле имеется несколько параллелограммов, то можно вывести любой из них. При этом вывод можно начать с любой вершины и идти как по часовой стрелке, так и против.

Если параллелограмма на поле нет, то выведите -1.

Пример ввода 1

4 7

.x.....

......x

x......

.....x.

Пример вывода 1

1 2

2 7

4 6

3 1

Пример ввода 2

4 5

.....

.xxxx

.....

...x.

Пример вывода 2

-1

Система оценивания.

Подзадача 1 (до 50 баллов): 2 ≤ MN ≤ 20.

Подзадача 2 (до 25 баллов): 2 ≤ MN ≤ 50.

Подзадача 3 (до 25 баллов): 2 ≤ MN ≤ 255.

 


View Problem Statistics Submit Problem discussion Author/source:
Problems from Contests and Camps / School olympiads and couses of Vologda region / All-Russian school olympiad, municipal stage / Municipal Stage 2016-17 / Forms 9-11 /
1685. 3 - Age 1686.
time generating 0.093 sec.
© Copyright VSU, AVT, Nosov D.A., Andrianov I.A.