Тур программирования
Данный тур проводится под девизом «Российские программисты – гордость страны». Каждая команда, зарегистрированная в числе участников фестиваля, представляет один проект, выполненный в одной из систем программирования. Для реализации проекта всем командам предлагается одинаковое задание, которое необходимо выполнить. Если задание выполнено и команда чувствует в себе силы для выполнения более сложного задания, то возможно расширение постановки задачи командой самостоятельно. Штаб фестиваля настоятельно рекомендует первоначально убедиться в правильности выполнения предложенного задания, и только после этого усложнять постановку задачи.
После выполнения задания в адрес штаба по электронной почте на адрес internet_fest@mail.ru высылаются следующие файлы:
- текст задания (первоначальный в формулировке штаба или дополненный в формулировке команды) в виде текстового файла (*.txt) с указанием в файле названия образовательного учреждения, команда которого выполнила задание и фамилии членов команды, выполнявших задание (по решению команды различные виды деятельности могут выполнять не всеми членами команды, а в соответствии с распределением обязанностей в команде);
- скрин-шот главного окна программы в виде графического файла типа JPG с именем типа voronezh_school7.jpg, органичения по линейным размерам - до 300 на 250 пикселей, ограничения по размеру файла - 30 Кб;
- исполняемый файл (*.exe), который работает без использования каких-либо дополнительных программных средств;
- файлы с исходным кодом программы.
Все файлы высылаются в виде архива с именем, содержащим название региона и школы, например, voronezh_petrovskay.zip или belgorod_licey3.rar. На архивный файл имеется ограничение по размеру - до 4 Мб.
После получения работ тура программирования на сайте фестиваля будут представлены скрин-шоты проектов и постановки задач.
Сроки выполнения работ тура программирования - с 12 марта по 26 марта 2008 года. Окончание приема работ по электронной почте - 27 марта 2008 года.
28 марта 2008 года в адрес команд из штаба будут разосланы сообщения о получении работ, распаковке архивов и о возможности запуска исполняемых файлов. Просьба 28.03.08 следить за почтой.
Участникам фестиваля предлагается разработать проект под названием "Фестивальная стрела".
Уже давно в нашей жизни используются удобные возможности сети Интернет по поиску различной информации, в частности, сведений о расписаниях движения поездов, самолетов и других средств передвижения.
Вам предлагается отправить по интернет-фестивальной железной дороге экспресс "Фестивальная стрела" с подарками для участников фестиваля и всех хороших людей.
Постановка задачи
Поезд "Фестивальная стрела" следует через станции, которые пронумерованы от 1 до N по пути, который образует замкнутый контур (кольцо). Поезд отправился со станции 1 сегодня в 00:00 часов и проезжает станции в порядке возрастания номеров. Для каждой станции известно, на какую станцию и сколько ящиков с подарками следует перевезти с данной станции. Доехав до станции N, он, если еще не все подарки доставлены, едет до станции 1 и вновь начинает движение по кольцу. Конечным пунктом маршрута считается тот, в котором все заявки окажутся выполненными. Известно также, сколько времени (в минутах) требуется поезду на проезд от станции i до станции i+1 (i=1, 2,…, N-1) и от станции N до станции 1. Время стоянки на каждой станции 2 минуты, но если на какой-то станции не требуется ничего выгружать или загружать, то поезд проходит эту станцию без остановки.
Требуется:
а) составить маршрут, удовлетворяющий условию задачи (то есть указать последовательность станций, через которые должен проследовать поезд, и вывести общее время движения по маршруту);
б) по задаваемому времени вывести на экран состояние маршрута: указать, где в данный момент находится поезд (на каком перегоне или на какой станции), сколько ящиков с подарками вывезено с каждой станции и сколько привезено на нее.
в) вывести на экран в виде графического изображения отрезок маршрута из трех станций, указав с помощью изображения паровозика (или другого), где в данный момент находится поезд (на левом перегоне, на правом перегоне или на средней станции)
Входные данные
В первой строке входного файла input.txt находится число N (1≤N≤20) — количество станций на маршруте поезда, в каждой из последующих N строк файла — N целых чисел (количества ящиков с подарками, которые следует перевезти с данной станции на каждую из N станций). В следующей строке файла содержатся N целых чисел (время проезда от станции i до станции i+1 и от станции N до станции 1).
Задаваемое время – два целых числа (часы и минуты) – вводится с клавиатуры.
Выходные данные
В первую строку выходного файла output.txt следует вывести последовательность станций, через которые должен проследовать поезд, во вторую – целое число (общее время движения по маршруту в минутах). В третью строку выходного файла следует вывести пару целых чисел – номера соседних станций, между которыми в данный момент находится поезд, или два одинаковых номера, если поезд находится на станции. В каждой из последующих N строк следует указать, сколько ящиков с подарками вывезено с данной станции и сколько привезено.
Пример 1 входного и выходного файлов
Input.txt
4
0 8 0 1
2 0 0 1
0 0 0 0
1 1 0 0
420 300 360 240
Введенное время: часов – 9, минут – 30.
Output.txt
1 2 3 4 1 2
1746
2 3
9 0
3 8
0 0
0 0
Пример 2 входного и выходного файлов
Input.txt
4
0 8 0 1
2 0 0 1
0 0 0 0
1 1 0 0
420 300 360 240
Введенное время: часов – 18, минут – 03.
Output.txt
1 2 3 4 1 2
1746
4 4
9 0
3 8
0 0
2 2
Штаб фестиваля желает всем участникам написания красивых авторских программ!
Если вы чувствуете, что ваш потенциал позволит вам усложнить постановку задачи, то вы можете это сделать это, например, вместо цифровых обозначений названий станций использовать буквенные названия городов, например, городов - участников фестиваля, также можно разрешить движение в двух направлениях или ввести в движение еще один поезд и т.п. Здесь Ваша фантазия может быть безгранична. Но не забывайте, что сначала желательно выполнить основное задание:)
С уважением, Зоя Александровна Шабунина, зам. декана факультета ПММ, доцент ВГУ, председатель жюри Тура программирования фестиваля "Интернет и Мы".