Олимпиадный тренинг

Задача . Три порта


Задача

Темы:
Петя моделирует работу прототипа коммутатора. У этого прототипа есть три порта. Два порта принимают данные из двух сетей со скоростью 5 КБайт в секунду каждый. Третий порт отдает данные в третью сеть со скоростью 10 КБайт в секунду. Данные из первой сети приходят пакетами по 40 КБайт, причем первый пакет начинает приниматься в начальный момент времени и далее новый пакет начинает приниматься по истечении каждых 10 секунд. Данные из второй сети приходят пакетами по 30 КБайт, причем первый пакет начинает приниматься по истечении 4 секунд от начального момента времени и далее новый пакет начинает приниматься по истечении каждых 8 секунд.  
Прототип коммутатора работает следующим образом. Поступающий пакет по мере передачи данных записывается в буферную память. Если одновременно принимаются пакеты в оба порта их запись в буферную память происходит одновременно и независимо. Как только некоторый пакет целиком принят, он становится готов к передаче через выходной порт. Передача данных через выходной порт происходит исходно полученными пакетами по 40 и по 30 КБайт соответственно, причем, если в некоторый момент времени есть возможность начать передать пакеты обоих размеров, сначала передаётся пакет большего размера. В один момент времени через выходной порт может передаваться только один пакет и пакет всегда передается целиком. Передача пакета через выходной порт начинается сразу, как только появляется готовый пакет, если в этот момент не передается другой пакет или сразу после завершения передачи предыдущего пакета. Как только очередной пакет передан, он удаляется из буфера. Если в один момент времени нужно удалить переданный пакет и записать очередную порцию данных принимаемого пакета, сначала происходит удаление. Если вся память в буфере занята, но происходит попытка принять данные, происходит переполнение буфера и аварийная остановка коммутатора. Определите минимальный размер буфера в КБайтах, при котором в процессе работы данной модели никогда не произойдет аварийная остановка. В ответе укажите целое число. 

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
Комментарий учителя