Kottt
Ученик
(138)
1 неделю назад
Чтобы решить эту задачу, нужно определить минимальный номер суток, к которым Люба сможет прочитать книгу, учитывая её занятость каждый день.
Алгоритм:
1. Инициализация суммы свободного времени: Создадим переменную для накопления свободного времени.
2. Проход по каждому дню: Для каждого дня вычисляем свободное время как разницу между общим количеством секунд в сутках (86400) и занятым временем в этот день.
3. Проверка накопленного времени: После добавления свободного времени каждого дня проверяем, достигла ли сумма необходимого времени для прочтения книги. Если да, выводим номер текущего дня и завершаем выполнение.
n, t = map(int, input().split())
a = list(map(int, input().split()))
sum_time = 0
for i in range(n):
sum_time += 86400 - a[i]
if sum_time >= t:
print(i + 1)
break
Объяснение:
- Чтение входных данных: Сначала считываем количество дней n и необходимое время t для прочтения книги. Затем считываем список занятого времени в каждый день.
- Накопление свободного времени: Для каждого дня вычисляем свободное время и добавляем его к общей сумме.
- Проверка условия: Как только накопленное свободное время достигает или превышает t, выводим номер текущего дня (увеличиваем индекс на 1, так как дни нумеруются с 1) и завершаем программу.
Этот подход гарантирует, что мы находим минимальный день, когда Люба сможет закончить чтение книги, эффективно обрабатывая входные данные за линейное время O(n).
Но в каждые из n суток у неё есть очень важные дела, которые она должна выполнять. Продолжительность занятости Любы в i-е сутки составляет ai секунд. Всё остальное время она может тратить на прочтение книги.
Помогите Любе определить минимальный номер суток, в которые она может закончить читать книгу.
Гарантируется, что номер этих суток не превосходит n.
Напомним, что в сутках 86400 секунд.
Входные данные
В первой строке входных данных задано два целых числа n и t (1 ≤ n ≤ 100, 1 ≤ t ≤ 106) — количество суток и время, необходимое для прочтения книги.
В следующей строке задано n целых чисел ai (0 ≤ ai ≤ 86400) — продолжительности занятости Любы в i-е сутки.
Выходные данные
В единственной строке входных данных выведите минимальный номер суток, в которые Люба сможет прочитать книгу.
Гарантируется, что номер этих суток не превосходит n.
Примеры
Входные данныеСкопировать
2 2
86400 86398
Выходные данныеСкопировать
2
Входные данныеСкопировать
2 86400
0 86400
Выходные данныеСкопировать
1