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  */

 

posted @ 2021-03-29 15:37  Mrsdwang  阅读(28)  评论(0编辑  收藏  举报