首页 > 试题广场 >

牛牛排队

[编程题]牛牛排队
  • 热度指数:1511 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
下课了,牛牛要去食堂吃饭,他们学校的食堂有很多个门,而且整个建筑物是圆形的。只不过要去吃饭的人很多,在里面吃饭的人也很多,所以大家都在门口外面排队等待吃饭。
所以牛牛采取了这样的一个策略:刚开始时,牛牛在第一个门口,如果这个门口有人在排队,那么他选择花费1分钟时间走到下一个门口,如果没有人的话,牛牛就可以直接进去吃饭啦。食堂的每一个门,每1分钟排队的人数都会减少一个。
现在给你门的数量n,和每个门外排队的人的数量,如果按照牛牛的策略,那么牛牛最终会在哪个门进去吃饭呢?请你进行编程求解,返回牛牛最终是从第几个门进入食堂吃饭的。
示例1

输入

4,[2,3,2,0]

输出

3

说明

按照牛牛的策略,每个门口外的排队人数随着时间的变化的结果为[2,3,2,0]→[1,2,1,0]→[0,1,0,0],当牛牛走到第3个门时,刚好没有人排队,所以牛牛最后可以从第3个门进去。 
示例2

输入

2,[10,10]

输出

1

说明

按照牛牛的策略,每个门口外的排队人数随着时间的变化的结果为[10,10]→[9,9]→[8,8]→[7,7]→[6,6]→[5,5]→[4,4]→[3,3]→[2,2]→[1,1]→[0,0]
,当牛牛走到第五圈,回到第1个门时,刚好没有人排队,所以牛牛最后可以从第1个门进去。

备注:





这道题你会答吗?花几分钟告诉大家答案吧!

问题信息

难度:
0条回答 2818浏览

热门推荐

通过挑战的用户

查看代码