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