Код Senior Окна и сдвиги обновлено
Самая длинная серия дней подряд: diff и cumsum
Условие
Дан список дат активности пользователя days (строки YYYY-MM-DD, возможны повторы, порядок любой). Верните длину самой длинной серии подряд идущих календарных дней. Для пустого списка 0. Решите векторно, без цикла по датам.
Примеры
streaks(["2026-01-01", "2026-01-02", "2026-01-03", "2026-01-05"]) // 3
streaks([]) // 0
streaks(["2026-01-05"]) // 1
Как подойти
Подсказки: 2
- Новая серия начинается, где разница с предыдущей датой не равна 1 дню.
- Номер серии:
cumsumбулевой маски.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.