题目:
算法思想: 用一个队列维护,每次输入的时间t入队,然后把[t-3000,t]范围以外的值出队。
代码:
class RecentCounter {
public:
queue<int> que;
RecentCounter() {
}
int ping(int t) {
que.push(t);
int begin = t - 3000 < 0 ? 0 : t - 3000;
int end = t;
int tmp = que.front();
while(tmp < begin)
{
que.pop();
if(que.size() == 0)
break;
tmp = que.front();
}
return que.size();
}
};