Given constant integers x and t, write a function that takes no argument and returns true if the function has been called x number of times in last t secs.

Given constant integers x and t, write a function that takes no argument and returns true if the function has been called x number of times in last t secs.

Q: 题意很明确,实现一个函数,如果该函数在过去的t秒内,被call了x次,则返回true

A:

1. 对一个queue包装一下,其size只有x

2. 每次call 这个函数的时候,检查queue是否的size==x,如果满了,pop第一个,再添加。每次添加当时的时间到queue中

3. 函数返回时,只需要check一下第一个元素的时候,和当前时间的差,是否小于t。是则返回true

注:如果此时queue的数据不足x,则说明没有call到x,应该返回false

posted @ 2012-01-12 11:37  百分百好牛  阅读(354)  评论(0编辑  收藏  举报