Задание 26 ЕГЭ по информатике · A4B351
Журнал сервера и резервные копииВысокаяКЭС 3.10
Сервер выполняет запросы на передачу данных. Сведения о каждом выполненном запросе — время регистрации, идентификатор клиента и объём переданных данных — сохраняются в журнале работы, а сам запрос помещается в специальный раздел памяти сервера ограниченного объёма. Если для очередного запроса недостаточно свободной памяти, сервер создаёт резервную копию всех накопленных данных, освобождает раздел и затем сохраняет очередной запрос.
Напишите программу для обработки журнала работы сервера и с её помощью определите идентификатор клиентского устройства, с которого на сервер был передан наибольший суммарный объём данных, не превышающий 150 000 Кбайт, а также сумму объёмов двух наибольших резервных копий специального раздела, выполненных не ранее 12:00:00.
Первая строка входного файла содержит два натуральных числа: N — количество строк в журнале (N<1 000 000) и K — вместимость специального раздела памяти сервера в Кбайт (K<1 000 000). Каждая из следующих N строк содержит время регистрации запроса в формате ЧЧ:ММ:СС, идентификатор клиентского устройства C (C<1 000 000) и объём данных запроса S (S<K) в Кбайт.
В ответ запишите два числа: сначала идентификатор устройства, с которого был передан наибольший суммарный объём данных, не превышающий 150 000 Кбайт, а затем сумму объёмов двух наибольших резервных копий, выполненных не ранее 12:00:00.
1_A4B351.txtНапишите программу для обработки журнала работы сервера и с её помощью определите идентификатор клиентского устройства, с которого на сервер был передан наибольший суммарный объём данных, не превышающий 150 000 Кбайт, а также сумму объёмов двух наибольших резервных копий специального раздела, выполненных не ранее 12:00:00.
Первая строка входного файла содержит два натуральных числа: N — количество строк в журнале (N<1 000 000) и K — вместимость специального раздела памяти сервера в Кбайт (K<1 000 000). Каждая из следующих N строк содержит время регистрации запроса в формате ЧЧ:ММ:СС, идентификатор клиентского устройства C (C<1 000 000) и объём данных запроса S (S<K) в Кбайт.
В ответ запишите два числа: сначала идентификатор устройства, с которого был передан наибольший суммарный объём данных, не превышающий 150 000 Кбайт, а затем сумму объёмов двух наибольших резервных копий, выполненных не ранее 12:00:00.
Показать ответ
1006 46566
Подсказки (3)
- Какие данные достаточно хранить для каждого идентификатора клиента? Как определить момент создания резервной копии при последовательном просмотре журнала?
- Поддерживайте словарь суммарных объёмов по клиентам и текущий объём занятой памяти. Если текущий объём плюс S больше K, сначала сохраните текущий объём как резервную копию, затем обнулите его и добавьте новый запрос.
- При переполнении запоминайте резервную копию только если время текущего запроса не меньше 12:00:00. После обработки журнала выберите максимальную сумму клиента, не превышающую 150 000, и два максимальных подходящих объёма резервных копий.
Решение
1. Для каждого клиента накапливаем суммарный объём переданных данных в словаре. 2. Последовательно обрабатываем запросы. Если текущий объём данных в разделе плюс объём очередного запроса превышает вместимость K, создаётся резервная копия текущего объёма. Время такой копии соответствует времени текущего запроса, из-за которого потребовалось освобождение раздела. V+S>K 3. Если время текущего запроса не ранее 12:00:00, добавляем объём созданной резервной копии в список. Затем устанавливаем текущий объём раздела равным нулю и помещаем в него очередной запрос. 4. После обработки всех строк среди сумм по клиентам выбираем наибольшую сумму, не превышающую 150 000 Кбайт. 5. Из списка резервных копий выбираем два максимальных значения и складываем их.
Частые ошибки
- Учитывать в резервной копии объём текущего запроса, хотя она создаётся до его помещения в раздел.
- Считать резервную копию при условии $V + S \geq K$ вместо условия $V + S > K$.
- Использовать время предыдущего запроса вместо времени запроса, вызвавшего переполнение.
- Выбирать максимальную сумму клиента без ограничения 150 000 Кбайт.
- Учитывать резервные копии, созданные до 12:00:00.
Источник: Открытый банк ФИПИ
Похожие задания
26Сервер выполняет запросы на передачу данных. Сведения о каждом выполненном запросе — время регистрации…Журнал сервера и резервные копии · 09681E26Сервер выполняет запросы на передачу данных. Для каждого запроса в журнале указаны время регистрации…Журнал сервера и резервные копии · 0AF4A526Сервер выполняет запросы на передачу данных, при этом сведения о каждом выполненном запросе (время…Журнал сервера и резервные копии · 1E4F5226Сервер выполняет запросы на передачу данных. Сведения о каждом запросе — время регистрации, идентификатор…Журнал сервера и резервные копии · 83B7FD26Два игрока играют в следующую игру. Перед ними лежат две кучки камней, в первой из которых 3, а во второй — 2…Игровая стратегия с обоснованием · 02861826В магазине для упаковки подарков есть N кубических коробок из материалов двух видов. Одну коробку можно…Коробки и коржи: вложение с заданной разностью · 05BFA6
Нужен репетитор по информатике?
Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.
Готовьтесь к ЕГЭ по информатике в Precettore
Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.