Задача к ЕГЭ по информатике на тему «Мусорки, кольцевая дорога» №6

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

Определите минимальные расходы на доставку мусора в центр переработки отходов.

Описание входных данных:

Первое число N  — количество контейнеров для мусора. Последующие N  чисел — количество килограмм мусора, которое производится на точке.

Описание выходных данных:

Одно число — минимальные расходы на доставку мусора в центр переработки отходов.

В ответе укажите два числа: сначала значение искомой величины для файла A  , затем — для файла B  .

f = open("7B.txt")
n = int(f.readline())
a = [int(f.readline())*3 for i in range(n)]
s = [0] * n
sum = 0
right, left = 0, 0

for i in range(1, n // 2):
    sum += a[i] * i + a[n - i] * i
    right += a[i]
    left += a[n - i]

sum += a[n // 2] * n // 2
s[0] = sum
for i in range(1, n):
    s[i] = s[i - 1] + left + a[i - 1] - right - a[(i + (n // 2) - 1) % n]
    right = right - a[i] + a[(i + (n // 2) - 1) % n]
    left = left - a[(i + (n // 2)) % n] + a[i - 1]
print(min(s))

Ответ: 7932 2323961620665
Оцените статью
Я решу все!