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

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

    №0 по КИМ

    Для участников велогонки на каждом километре кольцевой трассы с двусторонним движением установлены пункты питания. Длина кольцевой трассы равна N километров. Нулевой и N⁠-⁠й километры трассы находятся в одной точке. Известно количество комплектов питания в каждом из пунктов на трассе. В каждый пункт комплекты питания доставляет отдельный электрокар. Стоимость доставки питания вычисляется как произведение количества комплектов питания на расстояние от мобильного цеха их подготовки до пункта питания спортсменов на трассе. Мобильный цех подготовки комплектов расположен в одном из пунктов питания на трассе таким образом, что общая стоимость доставки из цеха во все пункты минимальна.

    Определите минимальную суммарную стоимость доставки питания для спортсменов из цеха его подготовки в пункты питания на трассе. Найденные числа запишите через пробел

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

    Дано два входных файла (файл A и файл B), каждый из которых в первой строке содержит число N (1 ≤ N ≤ 10 000 000)  — количество

    пунктов питания на кольцевой трассе. В каждой из следующих N строк находится число  — количество комплектов питания на пункте (все числа натуральные, количество комплектов питания на каждом пункте не превышает 1000). Числа указаны в порядке расположения пунктов питания спортсменов на трассе, начиная с первого километра.

    Типовой пример организации данных во входном файле

    6

    8

    20

    5

    13

    7

    19

    При таких исходных данных, если контейнеры установлены на каждом километре автодороги, необходимо открыть центр переработки в пункте 6. В этом случае сумма транспортных затрат составит: 1 · 7 + 0 · 19 + 1 · 8 + 2 · 20 + 3 · 5 + 2 · 13.

    1_27_A.txt1_27_B.txt

    Ответ

    Ответ:

    141530 18192010182272

    Решение

    f = open("1_27.txt")
    n = int(f.readline())
    elems = [int(i) for i in f]
    answers = [0 for i in range(n)]
    sum = 0
    rightSum = leftSum = 0
    for i in range(1, n // 2):
    sum = sum + elems[i] * i + elems[n - i] * i
    rightSum = rightSum + elems[i]
    leftSum = leftSum + elems[n - i]
    if n % 2 == 0:
    sum = sum + elems[n // 2] * (n // 2)
    else:
    sum = sum + elems[n // 2] * (n // 2) + elems[n - n // 2] * (n // 2)
    answers[0] = sum
    for i in range(1, n):
    answers[i] = answers[i - 1] + leftSum + elems[i - 1] - rightSum - elems[(i + (n // 2) - 1) % n]
    rightSum = rightSum - elems[i] + elems[(i + (n // 2) - 1) % n]
    leftSum = leftSum - elems[(i - (n // 2)) % n] + elems[i - 1]
    print(min(answers))
    Понятно ли решение?

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

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

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

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

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