Прошу помощи, напишите кто-нибудь две небольших программы на Turbo Pascal.
Во всех задах ввод данных производится из файла input.txt, а вывод результатов - в файл output.txt
1. Расписание автобусов
Ограничения: время – 500ms, память – 64M
Из города Китеж в форт Байан почти каждый час с 700 до 1700 отправляются автобусы с туристами. К сожалению, в расписании указано только время отправления, но не указано время прибытия. Петя узнал, что время поездки до форта без остановок равно K часов. Но согласно постановлению главного врача Беловодья водители во время поездки должны делать остановки с 800 до 900 на завтрак, с 1300 до 1400 на обед и с 1800 до 1900 на ужин.
Напишите программу, которая поможет Пете узнать время прибытия автобуса.
Первая строка ввода содержит два целых числа – время отправления автобуса T (7 ≤ T ≤ 17, T≠8, T≠13) и длительность поездки без остановок K (2 ≤ K ≤ 10).
Вывести одно целое число – время прибытия автобуса с учетом остановок на еду. Входные данные таковы, что автобусы прибывают в форт не позднее 2300.
Пример ввода
11 3
Пример вывода
15
Если бы автобус ехал без остановок, то он приехал бы в форт в 1400, но водитель должен сделать остановку на обед с 1300 до 1400, поэтому автобус приедет в форт в 1500.
2. Бинго
Ограничения: время – 500ms, память – 64M
Во дворе форта Байан проходят соревнования по игре в "бинго". Игра проходит на поле размером 5x5 клеток, каждые 5 секунд компьютер случайно выбирает одну из пустых клеток и подсвечивает ее, тогда один из игроков команды должен встать на эту клетку или положить в нее пушечное ядро. Если команда не успевает выполнить ход за отведенное время, то ход пропускается. Если ряд из 5 клеток по горизонтали или по вертикали будет полностью заполнен, команда кричит "бинго" и клетки этого ряда освобождаются от игроков и ядер. Может получиться так, что ядро (или игрок) ставится на пересечении двух рядов, в каждом из которых было по 4 заполненных клетки, таким образом два ряда (по вертикали и по горизонтали) будут заполнены одновременно, в этом случае команда кричит "бинго" дважды, и оба этих ряда освобождаются от игроков и ядер.
Напишите программу, определяющую, сколько раз за время игры команда сможет сказать "бинго", если успеет выполнить все ходы.
Первая строка ввода содержит одно целое число N (5 ≤ N ≤ 100) – количество ходов. Далее следует N строк, содержащих по два целых числа от 1 до 5 – номер строки и номер столбца подсвечиваемой клетки. Подсвечиваются только пустые к этому моменту клетки.
Вывести одно целое число – сколько раз у команды получится "бинго".
Пример ввода
8
1 2
3 5
3 2
4 5
3 1
3 4
3 3
5 5
Пример вывода
1
Две программы на Turbo Pascal
- NiGHt-LEshiY
- Полковник
- Сообщения: 10258
- Зарегистрирован: 13.06.2008
- Откуда: Россия
- Благодарил (а): 752 раза
- Поблагодарили: 2667 раз
- Контактная информация:
8 массивов по 1048576 элементов типа int64.
Люто.
Люто.
Кодекс поведения участников сообщества — обязательно к прочтению.
Просьба присылать сообщения об ошибках в ЛС.
Просьба присылать сообщения об ошибках в ЛС.
- $t@t!c_V()1D
- Разработчик
- Сообщения: 2639
- Зарегистрирован: 06.12.2007
- Благодарил (а): 10 раз
- Поблагодарили: 29 раз
NiGHt-LEshiY
Ну, можно ведь и с массивом строк работать - так веселее память забиваться будет
Ну, можно ведь и с массивом строк работать - так веселее память забиваться будет
Another guy on them internets
Уважайте команду CSMania.RU - задавайте вопросы правильно!
Уважайте команду CSMania.RU - задавайте вопросы правильно!
-
- Капитан
- Сообщения: 492
- Зарегистрирован: 23.05.2010
- Благодарил (а): 14 раз
- Поблагодарили: 43 раза
- Контактная информация:
Но они фэйлят в том, что возможные результаты можно сдампить в файл и беспалевно оттуда брать, причем поиск должен быть быстрее чем перебор.Pr0Ger писал(а):olegv11
олимпиадные задачи ограничивают по времени и памяти, что-бы отсечь решение работающие перебором или хранящие массив возможных входных вариантов