933. Number of Recent Calls
仅供自己学习
思路:
直接用一个队列添加请求,并判断所有队列中的请求时间被 t 减是否大于3000,如果大于3000则超过了[t-3000,t]的范围,就pop出去。最后返回queue的大小就可以。
1 class RecentCounter { 2 private: 3 int req=0; 4 queue<int> q; 5 public: 6 RecentCounter() {} 7 8 int ping(int t) { 9 q.push(t); 10 while(t-q.front()>3000) q.pop(); 11 return q.size(); 12 } 13 }; 14 15 /** 16 * Your RecentCounter object will be instantiated and called as such: 17 * RecentCounter* obj = new RecentCounter(); 18 * int param_1 = obj->ping(t); 19 */