17 lines
590 B
Markdown
17 lines
590 B
Markdown
Leetcode #933 | #Easy | [[Очередь]] | [[Интервалы]] | [[Design]]
|
|
## Идея
|
|
Используем очередь, при пинге добавляем время в конец, с верха снимаеи все что меньше t-3000, возвращаем длину очереди
|
|
## [[Big-O]]
|
|
- Время ```O(1)```
|
|
- Память ```O(W)```
|
|
## Код
|
|
```Java
|
|
class RecentCounter {
|
|
private Queue<Integer> q = new ArrayDeque<>();
|
|
public int ping(int t) {
|
|
q.offer(t);
|
|
while (q.peek() < t - 3000) q.poll();
|
|
return q.size();
|
|
}
|
|
}
|
|
``` |