Длиннейший подотрезок с суммой, кратной k

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

Submit solution


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

Problem type
Allowed languages
C++, Python

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

Партия товара считается полностью согласованной, если суммарный оборот за некоторый непрерывный период кратен числу k.

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

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

Первая строка содержит два целых числа n и k — количество периодов и размер партии.

Вторая строка содержит n целых чисел a_i — оборот по каждому периоду.

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

Выведите одно целое число — длину наибольшего непрерывного периода, сумма оборотов на котором кратна k. Если такого периода нет, выведите 0.

Ограничения

  • 1 <= n <= 2 * 10^5
  • 1 <= k <= 10^9
  • -10^9 <= a_i <= 10^9

Примеры

Пример 1

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

6 5
2 3 1 4 5 6

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

5

Пояснение

Наибольший подотрезок с суммой, кратной 5, — первые 5 элементов (сумма 15), его длина 5.

Пример 2

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

1 1
374

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

1

Комментарии

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