#include #include class RecentCounter { std::queue calls; public: RecentCounter() {} int ping(int t) { calls.push(t); while (calls.front() < t - 3000) { calls.pop(); } return static_cast(calls.size()); } }; /** * Your RecentCounter object will be instantiated and called as such: * RecentCounter* obj = new RecentCounter(); * int param_1 = obj->ping(t); */ static void test_1() { RecentCounter c; assert(c.ping(1) == 1); assert(c.ping(100) == 2); assert(c.ping(3001) == 3); assert(c.ping(3002) == 3); } int main() { test_1(); return 0; }