eolymp
bolt
Try our new interface for solving problems
Problems

Казино

Казино

\includegraphics{https://static.e-olymp.com/content/44/446c63ae4750e30b08d0a4b4535ed465c4dba7ed.jpg} В верхнем левом углу прямоугольного поля размерами \textbf{N}×\textbf{M} размещается игральный кубик, разворот которого изображен на рисунке. Кубик ориентирован так, что передней грани соответствует единица, а слева находится грань, которой соответствует двойка. Клетки поля квадратные, их размеры совпадают с размерами грани кубика. Кубик может двигаться по полю, переворачиваясь через одно из ребер, и попадать при этом в соседнюю снизу, сверху, справа или слева клетку поля. Например, если из начального состояния кубик двигается направо, то передней станет грань с двойкой, а если вниз --- то с тройкой. Кубик не может выходить за пределы поля. Напишите программу CASINO, которая по информации о поле находит один из возможных путей кубика из верхнего левого угла в нижний правый угол поля. При этом необходимо найти такой путь, чтобы передняя грань кубика в целевой клетке имела максимальное возможное значение. Кубик может посещать каждую клетку поля несколько раз. \InputFile Первая строка входного файла содержит два натуральных числа \textbf{N} и \textbf{M} (\textbf{2} ≤ \textbf{N}, \textbf{M} ≤ \textbf{50}), которые определяют высоту и ширину поля соответственно. Далее задается поле, которое представлено \textbf{N} строками, каждая из которых состоит из \textbf{M} чисел, каждое из которых равно \textbf{0} либо \textbf{1}. В случае, когда клетке поля соответствует число \textbf{1}, кубику запрещено посещать данную клетку. В противном случае эта клетка может встречаться в пути кубика. Начальной клетке всегда соответствует число \textbf{0}. \OutputFile \includegraphics{https://static.e-olymp.com/content/bc/bc3a091af104012c40f91dd928249dc7db77c75b.jpg} Первая строка выходного файла должна содержать натуральное число \textbf{W} --- длину найденного пути. Далее в файле должны находиться \textbf{W} строк, каждая из которых задает координату клетки поля на текущем шаге. Координата представляет собой пару натуральных чисел: номер строки и номер столбца клетки поля. В случае, когда искомого пути не существует, выходной файл должен содержать строку с числом \textbf{-1}.
Time limit 1 second
Memory limit 64 MiB
Input example #1
3 2
0 1
0 0
0 0
Output example #1
3
2 1
2 2
3 2