• Предмет: Информатика
  • Автор: shushablinchik
  • Вопрос задан 3 месяца назад

Помогите пожалуйста, даю 100 баллов! Python

Агрокомплекс «Дикое поле» представляет собой n полей, вытянувшихся в ряд. Поля пронумерованы, начиная с единицы. Комплекс находится в слабозаселённой зоне, и поэтому наблюдение за полями осуществляется с помощью дронов «Пеларгония». Агрокомплекс располагает двумя такими дронами. Один начинает облёт с первого поля, второй – с поля номер n; оба дрона движутся навстречу друг другу, последовательно осматривая поля. Они отличаются по размерам, поэтому на осмотр каждого поля требуется разное время. При этом перелёт с одного поля на другое занимает фиксированное время. Определите, за какое минимальное время дроны осмотрят все поля. Если одна «Пеларгония» уже осматривает поле, вторая на него не влетает.

Формат ввода

На вход программе в первой строке подаётся натуральное число N (3 ≤ N ≤ 1000000) – количество полей. Во второй строке подаётся натуральное число T ( T≤ 1000 минут) – время перелёта между соседними полями. Далее в N строках подаётся по одному натуральному числу ti (ti ≤ 1000 минут) – время осмотра поля номер i.

Формат вывода

Вывести одно натуральное число – минимально возможное время осмотра всех полей агрокомплекса.

Ответы

Ответ дал: forqforq
0

Ответ:

Код Python 3.10.

N = int(input())

T = int(input())

time = T * (N - 2)

for _ in range(N):

   x = int(input())

   time += x

print(time)

Объяснение:

time = T * (N - 2) - это время всех перелетов дронов. Если у нас имеется всего N полей, то между ними нужно совершить N - 1 перелетов. Учитывая, что если один дрон уже находится на поле и другой на него не влетает, то когда дроны подлетят к единственному оставшемуся полю, одному из дронов не нужно будет совершать перелет, поскольку другой уже будет осматривать это поле. Значит всего нам понадобится N - 2 перелетов.

Время осмотра каждого поля можно просто суммировать с общим временем, поскольку оба дрона и время перелетов между полями одинаковы.

Вас заинтересует