АВТ
Язык:

Дистанционный практикум по программированию

Задачи On-line статус ЧаВо Турниры
Для авторов:
 
Здравствуйте, Гость! Войдите с паролем или зарегистрируйтесь.

98. Анализ программы

Ограничение времени: 2 секунды
Ограничение памяти:64000КБ
Баллы:10
Статистика Послать на проверку Задачу добавил Administrator


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

Входные данные состоят из N строк (1 <= N <= 10000), полученных в результате синтаксического 
анализа исходного текста программы. Каждая строка этого файла соответствует одному оператору 
исходного текста и содержит следующие данные:

 NEXT - после оператора, соответствующего этой строке, может быть  выполнен лишь 
 следующий по порядку оператор;

 JUMP номер - после оператора, соответствующего этой строке, может быть  выполнен 
 лишь оператор с указанным номером (нумерация операторов начинается с единицы);

 JUMP номер1 OR номер2 - после оператора, соответствующего этой строке, может быть 
 выполнен один из двух операторов, номера которых указаны.

Номера операторов отделены от служебных слов одним или несколькими пробелами. 
Известно, что программа всегда начинает выполняться с оператора с номером 1.

Выходные данные помещаются состоят из нескольких строк. Первая строка содержит 
число невыполняемых операторов, каждая из последующих строк - их номера, расположенные 
в порядке возрастания.

Пример входных данных:

NEXT
JUMP 4 OR 6
NEXT
JUMP 3
NEXT
JUMP 8
NEXT
NEXT


Пример выходных данных:

2
5
7

Статистика Послать на проверку Автор/источник:
Задачи с соревнований / Отборочные туры ВоГТУ / Отборочный тур на ACM ICPC 2005 /
98. 100. Векторы 97. Прогрессия 99. Шутка
 
время генерации 0.951 сек.
© Copyright ВоГТУ, АВТ, Носов Д.А.