#391 Подсчет активных пользователей в скользящем окне
Есть последовательность запросов пользователей, каждый запрос — это пара (time, userId), запросы всегда приходят в отсортированном по времени порядке.
Нужно уметь быстро отвечать: "сколько за последние k ms было пользователей, которые задали >= limit запросов", k > 0, limit > 0.
class UserStatistics {
private long limit = 0;
private long k = 0;
public void event(long now, long userId) {
// place your code here
}
public int robotCount(long now) {
// place your code here
}
}
Разбор вопроса
Войди, чтобы начать диалог
Ментор ведёт диалог по текущему вопросу и учитывает предыдущие сообщения.
Войти
Доступно с Premium
Это лишь одно из решений, доступных с Premium. А ещё:
- 250+ продвинутых лекций
- 1300+ практических заданий
- 500+ решений задач с реальных собеседований
- Именные сертификаты Java Hub
- Расширенный доступ к AI-ментору