Задача PERFECTUM
Прототип нового мобільного телефону під кодовою назвою
"PERFECTUM MOBILE"
має скінчене число станів N (1<= N <=200) ( наприклад, написання
sms, прослуховування музики). При натисканні однієї й тієї ж
кнопки телефон робить різні дії, залежно від поточного стану. Для
кожного стану відомо, у які стани перейде телефон при натисканні на
одну з M
кнопок (1<=M<=50). Іноді кнопки можуть
"залипати" . Потрібно з'ясувати, наскільки небезпечним може виявитися
"залипання" однієї із кнопок. Був створений список небезпечних послідовностей станів телефону (наприклад,
"Архів sms"->"Oпції"->"Видалити
всі"),що містить L послідовностей (0<=L<=10).
Необхідно з'ясувати, чи можливо виникнення якої-небудь із зазначених послідовностей при "залипанні" однієї із кнопок.
"Залипнути" може будь-яка кнопка, у будь-якому стані, досяжному зі стану із номером
1.
Teхнічні умови
Програма зчитує з клавіатури
вхідні величини в такій послідовності: три
числа N,M,L.далі йде N груп, кожна містить M
чисел від 1 до N. j-е число в і-ій групі означає,
що із стану з номером i при натисканні на
кнопку j телефон перейде в стан з вказаним
номером. Далі слідує ще L груп.
Перше число A (1<=
A<=1000)
у групі - кількість станів у небезпечній
послідовності, а далі слідує А номерів
станів. Всі числа розділені пропусками.
Програма виводить на екран один рядок, який
містить кількість станів, що можуть дати
помилку при "залипанні" будь-якої кнопки в них, а далі, в
порядку зростання, номери цих станів. Всі
числа розділено пропусками
Приклади
Введення |
Виведення |
5
3 1 2 3 2 3 2 1
2 4 5 1 4 3 1 5
5 1 5 |
3 3 4 5 |
Введення |
Виведення |
2 2 1
2 1 2 1 3 1 2 1 |
0 |
|