Untitled
unknown
java
2 years ago
505 B
17
Indexable
Map<String, Deque<Long>> map = new HashMap<>(); boolean accept(String token, long timestamp) { if (!map.containsKey(token)) map.put(token, new ArrayDeque<>(k)); Deque<Long> queue = map.get(token); while (queue.size() > 0 && timestamp - queue.peekFirst() > 1000) { queue.pollFirst(); } if (queue.size() <= n) { queue.addLast(timestamp); return true; } else { return false; } }
Editor is loading...