Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
delphi / песни о паскале.pdf
Скачиваний:
62
Добавлен:
26.03.2016
Размер:
5.16 Mб
Скачать

Приложение М Пример олимпиадной задачи

Представлена одна из задач XVII районной (городской) олимпиады по информатике Московской области 2004 г.

Дано

Трамвайная сеть города состоит из N трамвайных остановок, пронумерованных числами от 1 до N. Остановки соединяются друг с другом M перегонами, пронумерованными числами от 1 до M. На трамвайных остановках есть стрелки для перехода трамвая с любого ведущего к остановке перегона на любой другой перегон, ведущий от нее. Все перегоны имеют одинаковую длину, но принадлежат к двум типам: односторонние и двухсторонние. По односторонним перегонам трамваи могут двигаться только в одном направлении; по двусторонним

— в обоих, но вдвое медленнее, чем по односторонним.

1 2 5

1

2

4

 

 

4

3

3 6

Требуется

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

Входные данные

В первой строке входного файла приведено количество остановочных пунктов N (2≤ N≤ 100) и число перегонов M (1 ≤ M ≤ 30000). Далее идут M строк с описаниями перегонов по одному описанию в строке. Каждое описание состоит из четырех чисел, разделенных пробелом: номера перегона; двух номеров остановок, которые соединяет данный перегон; тип перегона (1 — если перегон односторонний и 2 — если двусторонний). Если перегон односторонний, то

587

Приложение М Пример олимпиадной задачи

движение трамваев по нему разрешается от первого остановочного пункта в описании ко второму. Далее следует строка с двумя номерами остановок, между которыми следует найти кратчайший по времени путь (от исходной остановки к конечной)

Выходные данные

В выходной файл «output.txt» следует вывести список номеров остановочных пунктов и перегонов между ними в порядке их прохождения трамваем. В случае нескольких возможных правильных ответов вывести любой из них.

Контрольный пример

Входные данные

Вывод

4

6

1

1

1

1

2

2

2

2

1

2

2

3

1

3

1

5

5

2

4

2

4

4

2

3

2

 

6

4

3

1

 

1

4

 

 

 

588

Библиография

1.Алексеев А. В. Олимпиады школьников по информатике. Задачи и решения. — Красноярск: Красноярское книжное издательство, 1995.

2.Андреева Е. В., Фалина И. Н. Информатика: Системы счисления и компьютерная арифметика. — М.: Лаборатория Базовых Знаний, 1999.

3.Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. — М.: Мир, 1979.

4.Бабушкина И. А., Бушмелева Н. А., Окулов С. М., Черных С.Ю. Конспекты занятий по информатике (практикум по Паскалю). — Киров: Изд-во ВятГПУ, 1997.

5.Бадин Н. М., Волченков С. Г., Дашниц Н. Л., Корнилов П. А. Ярославские олимпиады по информатике. — Ярославль: Изд-во ЯрГУ, 1995.

6.Беров В. И., Лапунов А. В., Матюхин В. А., Пономарев А. А. Особенности национальных задач по информатике. — Киров: Триада-С, 2000.

7.Брудно А. Л., Каплан Л. И. Олимпиады по программированию для школьников / Под ред. Б. И. Наумова /. — М.: Наука, 1985. 96 с.

8.Брудно А. П., Каплан Л. И. Московские олимпиады по программированию.

М.: Наука, 1990.

9.Вирт Н. Алгоритмы+структуры данных=Программы. — М.: Наука, 1989.

10.Дагене В. А., Григас Г. К., Аугутис К. Ф. 100 задач по программированию.

М.: Просвещение, 1993.

11.Долинский М. С. Решение сложных и олимпиадных задач по программированию: Учебное пособие. — СПб.: Питер, 2006. — 366 с

12.Емеличев В. А., Мельников О. И., Сарванов В. И., Тышкевич Р. И. Лекции по теории графов. — М.: Наука, 1990.

13.Епанешников А., Епанешников В.. Программирование в среде Turbo Pasca 7.0. — М.: «Диалог-МИФИ», 1995.

14.Йодан Э. Структурное проектирование и конструирование программ.

М.: Мир, 1979.

15.Кирюхин В. М., Лапунов А. В., Окулов С.М. Задачи по информатике.

Международные олимпиады 1989-1996. — М.: «ABF», 1996.

16.Кнут Д. Искусство программирования. Т. 1-3, Получисленные алгоритмы. Сортировка и поиск. — М.: Издательский дом «Вильямс», 2000.

17.Кормен Т., Лейзерстон Ч., Ривест Р. Алгоритмы: Построение и анализ.

М.: МЦНМО, 2001.

18.Кристофидес Н. Теория графов. Алгоритмический подход. — М.: Мир, 1978.

19.Лапунов А. В., Окулов С. М. Задачи международных олимпиад по информатике. — Киров, Изд-во ВятГПУ, 1993.

589

Библиография

20.Меньшиков Ф. В. Олимпиадные задачи по программированию (+CD). —

СПб.: Питер, 2006.

21.Овсянников А., Овсянникова Т., Марченко А., Прохоров Р. Избранные задачи олимпиад по информатике. — М.: Тровант, 1997.

22.Окулов С. М. Задачи кировских олимпиад по информатике. — Киров, Изд-

во ВятГПУ, 1993.

23.Окулов С. М. Конспекты занятий по информатике (алгоритмы на графах): Учебное пособие. — Киров, Изд-во ВятГПУ, 1996.

24.Окулов С. М. Основы программирования. — М.: Лаборатория Базовых Знаний, 2001.

25.Окулов С. М., Пестов А. А. 100 задач по информатике. — Киров, Изд-во ВятГПУ, 2000.

26.Окулов С. М., Пестов А. А., Пестов О. А. Информатика в задачах. — Киров, Изд-во ВятГПУ, 1998.

27.Поляков Д.Б., Круглов И.Ю. Программирование в среде Тубо Паскаль

(версия 5.5) — М.: Издательство МАИ 1992.

28.Препарата Ф., Шеймос М. Вычислительная геометрия. Введение. — М.:

Мир, 1989.

29.Седжвик Роберт. Фундаментальные алгоритмы на C++. Анализ. Структуры данных. Сортировка. Поиск. — Москва, С-Петербург, Киев:

Диасофт, 2003.

30.Скиена С. С, Ревилла М. А. Олимпиадные задачи по программированию. Руководство по подготовке к соревнованиям Пер. с англ. - М: КУДИЦ-

ОБРАЗ, 2005. — 416 с.

31.Уэзерелл Ч. Этюды для программистов. — М.: Мир, 1982. 288 с.

32.Фаронов В.В. Турбо Паскаль 7.0. Начальный курс: Учебное пособие — М.:

КНОРУС, 2007, 576 с.

33.Фаронов В.В. Турбо Паскаль 7.0. Практика программирования. Учебное пособие — М.: КНОРУС, 2007, 416 с.

34.Федоров А. Borland Pascal: практическое использование Turbo Vision 2.0

— Киев: Диалектика 1993.

35.Федоров А. Особенности программирования на Borland Pascal — Киев:

Диалектика 1994.

36.Хаггарти Р. Дискретная математика для программистов — М.,

Техносфера, 2003

37.Шень А. Программирование: теоремы и задачи. — М., МЦНМО, 1995.

38.Шпак Ю.А. Turbo Pascal 7.0 на примерах. — К., «Юниор», 2003.

590

Соседние файлы в папке delphi