Студенческие олимпиады по программированию 2003 года. Ускова О.Ф - 22 стр.

UptoLike

Составители: 

22
0 0 0
Пример выходных данных
Выщли за 11 минут.
Ловушка !
З а д а ч и п о н о м и н а ц и я м
Информатика как профилирующая дисциплина
«Водители- болтуны»
В каждом городе есть общественный транспорт. На каждом маршруте автобус
движется по кольцу , и каждая линия имеет, по крайней мере, две остановки .
Некоторые линии имеют общие остановки . Когда два и более водителя встречаются на
одной остановке , они обмениваются своими новостями, и с этого времени каждый из
них знает и свои новости, и чужие. Все водители начинают движение на линиях в одно
и тоже время. Каждый автобус все время совершает поездки по одной и той же линии.
Различные автобусы на одной линии стартуют, возможно , на различных остановках в
начале дня.
Автобусы работают очень синхронно . Время необходимое, чтобы доехать от одной
остановки до другой одинаково для всех остановок и всех линий .
Известно , что в городе n автобусных линий (0 < n < 20), d водителей (и также d
автобусов) (0 < d < 30) пронумерованных числами от 1 до d, и s автобусных остановок
(0 < s < 50), пронумерованных от 1 до s.
Водители хотят знать, может ли каждый из них узнать в некоторое время всю
информацию , которая известна его коллегам . Напишите программу, которая поможет
ответить на этот вопрос.
Входные данные
Входной файл содержит блоки строк. Каждый блок, исключая последний , описывает
один город. В первой строке блока целые числа n, d и s разделяемые одним пробелом.
Следующие 2n строки описывают n автобусных линий (2 строки на каждую линию ) по
следующим правилам : в первой строке идут номера остановок, разделенные пробелом.
Остановки перечислены в порядке , по которому автобус объезжает их. После
последней остановки в списке автобус следует к первой. Вторая строка описывает, с
каких остановок начинают движение автобусы в начале дня. Описание состоит из пар
s
i
, d
i
, где s
i
номер остановки и d
i
номер водителя. Все числа s
i
, d
i
на строке
разделены одним пробелом. Последний блок содержит одну строку , состоящую из трех
нулей «0 0 0».
Выходные данные
Выходной файл содержит строки , соответствующие блокам во входном файле. Строка
«Да», если соответствующий блок в файле входа описывает ситуацию , когда каждый
водитель будет знать в некоторое время все новости от своих коллег. Иначе строка
содержит «Нет». Для последней строки входного файла, соответствующая строка
выходного не формируется.
Пример входных данных
2 3 5
1 2 3
1 1 2 2
2 3 4 5
2 3
0 0 0
Пример выходных данных
Да
Информатика как общеобразовательная дисциплина (включая
технические и военные вузы )
" Прямоугольник "