ГлавнаяСборникиТурнирыРазделыФорумыУчастникиПечатьПомощьО системе

Турниры > Тренировочный турнир сезона «Осень — 2018» > задача:


P2. Таймер: Планирование процесса с помощью циклограммы

Тренировочный турнир сезона «Осень — 2018»

Старт: 06.окт.2018 в 14:00:00
Финиш: 02.ноя.2018 в 23:00:00
Турнир завершён!
• Турнирная таблица

Задачи турнира

• E. Макс и мины
• F. Максимальное произведение
• G. Даниил и ряд врагов
• H. Даниил и составление расписания
• I. Даниил и пропавшие результаты
• J. Макс и Medieval
• P1. Таймер: Код доступа
• P10. Таймер: Упаковка конфет в к...
• P2. Таймер: Планирование про...
• P3. Таймер: Трассировка циклогра...
• P4. Таймер: Мониторинг кратковре...
• P5. Таймер: Мониторинг длительн...
• P6. Таймер: Планирование размера...
• P7. Таймер: Подача брусков начинки
• P8. Таймер: Разрезание брусков н...
• P9. Таймер: Отправка начинки в к...

Обратная связь

Если у вас есть предложения или пожелания по работе Contester, посетите форум сайта www.contester.ru.

Лимит времени 2000/2000/2000/2000 мс. Лимит памяти 65536/65536/65536/65536 Кб.

Таймер: Планирование процесса с помощью циклограммы
Таймер: Планирование процесса с помощью циклограммы
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
64 мегабайта
ввод
стандартный ввод
вывод
стандартный вывод

Многоканальный таймер программного управления обеспечивает включение и выключение сигнала на выходе определенного канала в заданные моменты времени. В таймерах дяди Саши одна команда таймера содержит три числа: номер канала K, момент времени Т, код действия A: 0 – выключить, 1 – включить. Совокупность команд образует управляющую программу. Эти программы принято отображать на специальных графиках, называемых циклограммами. Одна линия циклограммы соответствует выходу одного канала. Линия располагается вдоль оси времени и содержит полоски, каждая из которых отображает отрезок времени, когда на выходе канала активное состояние, т.е. канал включен. Чтобы канал 3 был включен на интервале от 3.5 секунды до 5.2 секунды, нужно ввести в таймер две команды: (3, 3.5, 1) и (3, 5.2, 0). На циклограмме этим двум командам соответствует полоска на линии 3 с началом в точке 3.5 и концом в точке 5.2 оси времени.

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

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

Первая строка содержит целые числа $$$N$$$ и $$$F$$$ ($$$1 \le N, F \le 100$$$) — количество количество настраиваемых каналов и номер первого задействованного канала.

Вторая строка содержит вещественные числа $$$S$$$ и $$$I$$$ ($$$0.0 \le S, I \le 100.0$$$) — момент времени включения канала $$$F$$$ и интервал времени между выключением одного канала и включения следующего.

Третья строка содержит $$$N$$$ целых чисел $$$A_i$$$ ($$$1 \le A_i \le 100$$$) — длина отрезка времени исполнения операции, очередного канала.

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

Выведите $$$N$$$ строк, в каждой из которых фигурируют две команды канала таймера включения и выключения. Первые две команды, в первой строке, относятся к каналу $$$F$$$, следующие две, во второй строке, к каналу $$$F + 1$$$ и т.д.

Пример

Входные данные
8 2
5.5 0.2
1 2 3 4 5 6 7 8
Выходные данные
2 5.5 1 6.5 0
3 6.7 1 8.7 0
4 8.9 1 11.9 0
5 12.1 1 16.1 0
6 16.3 1 21.3 0
7 21.5 1 27.5 0
8 27.7 1 34.7 0
9 34.9 1 42.9 0

Для отправки решений необходимо выполнить вход.

www.contester.ru