•
문제 설명 : 매번 증가하는 Ping값을 받았을 때, 조건에 맞는 핑 값이 몇개 있는지 반환
•
풀이 방법
◦
Queue를 사용하여 가장 먼저 들어온 핑부터 (최근 핑 값 - 3000)보다 큰지 확인한다.
◦
단순한 큐 구현을 묻는 것 같다
•
시간복잡도 :
•
성공 코드
from collections import deque
class RecentCounter:
def __init__(self):
self.output = deque()
def ping(self, t: int) -> int:
self.output.append(t)
while self.output and self.output[0] < t - 3000:
self.output.popleft()
return len(self.output)
# Your RecentCounter object will be instantiated and called as such:
# obj = RecentCounter()
# param_1 = obj.ping(t)
Python
복사