Весной и летом всех желающих школьников пригласили принять участие в загородной археологической экспедиции. Желающие принять участие в экспедиции могут самостоятельно приехать в экспедиционный лагерь в любой день на какое-то удобное количество дней. Разумеется, каждому школьнику организаторы экспедиции обещали предоставить спальный мешок и место в туристической палатке. Желающих принять участие в экспедиции оказалось так много, что пришлось составить график. В графике указано N дней экспедиции (включая первый и последний ее день). Служба материально-технического обеспечения экспедиции записала в графике данные о том, сколько человек уедет из лагеря, и сколько приедет в лагерь в каждый из дней. Напишите программу, которая по этим данным определит, какое максимальное количество человек одновременно будет проживать в экспедиционном лагере, чтобы служба материально-технического обеспечения могла заранее подготовить необходимое количество спальных мешков и мест в туристических палатках. Формат ввода Во входном файле записано сначала число N (2 ≤ N ≤ 100) — количество дней в экспедиции. Далее задается количество человек, которые приедут в экспедиционный лагерь в первый день. Далее идет (N-2) пары чисел, задающих для последующих дней количество уезжающих и приезжающих школьников. Наконец, идет число, задающее количество уехавших из лагеря в последний день. Количество приезжающих школьников в каждый из дней не превышает 100. Данные корректны, в частности, суммарное количество приехавших в лагерь в течение всех дней школьников всегда равно суммарному количеству уехавших из лагеря. Формат вывода В выходной файл выведите одно целое число — максимальное количество человек, которые в какой-то момент одновременно проживали в лагере. ПримечанияПервый пример: в первый день в лагерь приедет 10 человек. Далее 3 человека уедут и 1 приедет. В лагере будет 8 школьников. На следующий день уедет 5 и приедет 10. Станет 13 человек. В предпоследний день никто не уедет, а приедет 2 человека. В последний день уедет 15 человек. Итого максимальное количество — 15.
Для решения задачи создадим переменную current_people, которая будет хранить текущее количество людей в лагере. Пройдемся по всем дням экспедиции, добавляя к current_people количество прибывших и вычитая количество убывших школьников. В процессе прохода будем обновлять переменную max_people - максимальное количество школьников, которые находились одновременно в лагере. Наконец, выведем max_people.
Пример реализации на Python:
N = int(input()) entries = [int(input())] for _ in range(N-2): left, came = map(int, input().split()) entries.append(came - left) entries.append(-int(input())) current_people = 0 max_people = 0 for people in entries: current_people += people if current_people > max_people: max_people = current_people print(max_people)
Пример использования:
4Пример входного файла:
10
3 1
0 10
15
Пример выходного файла:
15Для решения задачи создадим переменную current_people, которая будет хранить текущее количество людей в лагере. Пройдемся по всем дням экспедиции, добавляя к current_people количество прибывших и вычитая количество убывших школьников. В процессе прохода будем обновлять переменную max_people - максимальное количество школьников, которые находились одновременно в лагере. Наконец, выведем max_people.
Пример реализации на Python:
N = int(input())entries = [int(input())]
for _ in range(N-2):
left, came = map(int, input().split())
entries.append(came - left)
entries.append(-int(input()))
current_people = 0
max_people = 0
for people in entries:
current_people += people
if current_people > max_people:
max_people = current_people
print(max_people)