Заплыв
Ограничение по времени: 1
секунда
Ограничение по памяти: 256
мегабайт
Петя любит плавать в реке. Место, доступное для плавания, ограничено буйками. Плавать левее первого буйка и правее последнего буйка запрещено.
Линия, вдоль которой расположены N
буйков, проходит параллельно берегу. Будем считать, что буйки пронумерованы числами от 1
до N
слева направо. Известны расстояния S1
, S2
, …
, SN−1
, где Sj
—
расстояние от буйка j
до буйка (j+1
).
python
# Шаг 1: считываем число N
N = int(input())
# Шаг 2: считываем расстояния между буйками
distances = list(map(int, input().split()))
# Шаг 3: инициализируем переменные
res = 0
temp = 0
# Шаг 4: идем в цикле по расстояниям
for i in range(1, N):
# Шаг 5: проверяем текущее и предыдущее расстояния
if distances[i] <= distances[i-1]:
# текущий путь закончился, сравниваем его длину с предыдущим путем
if temp > res:
res = temp
# сбрасываем временную переменную до нуля
temp = 0
# Шаг 6: продолжаем двигаться по текущему пути
temp += distances[i]
# Шаг 7: сравниваем длину последнего пути с предыдущим
if temp > res:
res = temp
# Шаг 8: выводим результат
print(res)
Данный код решает задачу и выводит на экран длину самого длинного пути между двумя буйками.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет