Подотрезки с суммой не больше S

Просмотр в формате PDF

Submit solution


Очки: 160
Ограничение по времени: 2.0s
Ограничение по памяти: 256M

Problem types
Allowed languages
C++, Python

Финансист анализирует ежедневный оборот компании за n дней. Для каждого дня известен неотрицательный оборот a_i.

Периодом считается любой непрерывный отрезок дней. Финансиста интересуют все такие периоды, у которых суммарный оборот за этот промежуток не превышает бюджет S.

Требуется посчитать количество периодов, для которых сумма оборота не больше S.

Входные данные

Первая строка содержит два целых числа n и S — количество дней и величину бюджета.

Вторая строка содержит n целых чисел a_i — оборот в каждый из дней.

Выходные данные

Выведите одно число — количество непрерывных периодов, суммарный оборот на которых не превышает S.

Ответ может не помещаться в 32-битный целочисленный тип.

Ограничения

  • 1 <= n <= 2 * 10^5
  • 0 <= S <= 10^18
  • 0 <= a_i <= 10^9

Примеры

Пример 1

Входные данные

5 6
2 1 3 4 1

Выходные данные

9

Пояснение

Считаем все подотрезки, сумма которых не превышает 6; их 9.

Пример 2

Входные данные

1 0
354

Выходные данные

0

Комментарии

Еще нет ни одного комментария.