ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила

MSU SE and Ural SU contest. Petrozavodsk training camp. Summer 2005

Описание     Задачи     Отправить на проверку     Состояние проверки     Результаты
Соревнование завершено

G. И снова лабиринт

Ограничение времени: 0.5 секунды
Ограничение памяти: 64 МБ
Одной из самых популярных игр всех времён и народов является игра «Лабиринт». Игра происходит на клетчатом поле N × M. Игрок может произносить команды «влево», «вправо», «вверх», «вниз». Для каждой клетки поля и каждой команды ведущим определено поле, на которое переместится игрок (то есть дана карта лабиринта). Однажды игра была прервана, и ведущий забыл, на каком поле находится игрок. К счастью, сохранилась полная запись игры — последовательность команд, произнесённых игроком. Напишите программу для определения полей, в которых игрок может находиться сейчас.

Исходные данные

В первой строке находятся числа N и M (1 ≤ N,M ≤ 100). Далее идут 4 блока данных. В каждом блоке N строк. В каждой строке M пар: i-я пара в j-й строке в k-м блоке показывает координаты игрока после произнесения k-й команды на клетке с координатами (j, i). Далее идет число команд S (1 ≤ S ≤ 4000), произнесённых игроком. На следующей строке идут S чисел — номера этих команд.

Результат

В первой строке выведите число L клеток, на которых может оказаться игрок после выполнения заданной последовательности команд. На следующих L строках — координаты этих клеток, упорядоченных сначала по первой координате, а потом по второй.

Пример

исходные данныерезультат
2 3
1 2  1 3  1 3
2 2  2 3  2 3
2 1  2 2  2 3
2 1  2 2  2 3
1 1  1 1  1 2
2 1  2 1  2 2
1 1  1 2  1 3
1 1  1 2  1 3
4
1 2 3 4
2
1 1
1 2
Автор задачи: Андрей Халявин
Источник задачи: Petrozavodsk summer training camp, August 2005.
Чтобы отправить решение этой задачи на проверку перейдите в Архив задач: 1386. И снова лабиринт