Новая Школа - онлайн-школа подготовки к ЕГЭ
При поддержке
Тренировки Пробники Статистика Карточки Учебник Об экзамене Учительская
  • Тренажёр заданий ЕГЭ
  • Тренажёр ЕГЭ по Информатике
  • Список заданий №0
  • Задание №0
  • Задание №60518 ЕГЭ Информатике

    Условие задания #60518

    №0 по КИМ

    На каждом километре автомагистрали, начиная с первого, расположены пункты питания. Известна суточная потребность каждого пункта питания в количестве готовых обедов. По правилам готовую еду нельзя перевозить на расстояние, превыщающее M км. Для транспортировки используются термоконтейнеры вместимостью не более 8 готовых обдеов. Каждый термоконтейнер используется для доставки только в один пункт питания, при этом в каждый пункт питания доставки только в один пункт питания, при этом в каждый пункт питания может быть доставлено не более одного термоконтейнера с неполной загрузкой. Компания-производитель расоположила в одном из пунктов питания цех для производства готовых обедов так, что из этих цехов в пункты питания цех для производства готовых обедов так, что из этих цехов в пукнта питания еждневно отправляется максимальное количество термоконтейнеров с гтовыми обедами. Определите необходимое суммарное количество термоконтейнеров для ежедневной перевозки готовых обедов в пункты питания из цеха.

    Входные данные: 
    Дано два входных файла (A и B). Кажыдй из которых в первой строке содержит два числа N и M (Формула) количество пунктов и максимальное расстояние, на которое разрешается перевозить комплект готового питания. В каждой из следующих N строк находится одно число: суточная потребность соответствующего пункта в комплектах готового питания. Информация о пунктах дана в порядке их расположения вдоль автомагистрали

    1A.txt

    1B.txt

    Ответ

    Ответ:

    48463 522260235

    Решение

    f = open("../files/1A.txt")
    n, m = map(int, f.readline().split())
    a = [(int(i) + 7) // 8 for i in f]

    mx = 0
    for i in range(n):
       s = 0
       for j in range(n):
          if abs(i - j) <= m:
             s += a[j]

       mx = max(mx, s)

    print(mx)

    s = mx = sum(a[: 2 * m + 1])
    for i in range(m + 1, n - m):
       s = s - a[i - m - 1] + a[i + m]   
       mx = max(mx, s)


    print(mx)
    Понятно ли решение?

    Похожие задания

    15
    Задание №71953Задание №71952Задание №20415Задание №71951Задание №20414Задание №20416Задание №31793Задание №20408Задание №38017Задание №71950Задание №21583Задание №75926Задание №75924Задание №75922Задание №75919
    Бесплатно

    Решай задачи ЕГЭ в приложении

    Скачивай наш Тренажер ЕГЭ на iPhone или Android и тренируйся в любое время и в любом месте!

    Саша — ассистент в телеграмме