#4200. ACoder 游乐园(AtCoder Amusement Park)
ACoder 游乐园(AtCoder Amusement Park)
题目描述
AtCoder游乐园有一个可以容纳人的景点。现在,有个团体排队等待这个景点。
从队伍前面数起的第个团体由人组成。对于所有,都有。
小高作为这个景点的工作人员,将按照以下程序引导队伍中的团体:
初始时,没有人被引导到景点,有个空座位。
-
如果队伍中没有团体,启动景点并结束引导。
-
比较景点中的空座位数与队伍前面团体的人数,执行以下操作之一:
- 如果空座位数少于队伍前面团体的人数,启动景点。然后,空座位数再次变为。
- 否则,引导队伍前面的整个团体进入景点。前面的团体从队伍中移除,空座位数减少该团体的人数。
-
返回步骤1。
在这里,引导开始后不会有额外的团体加入队伍。在这些条件下,可以证明这个程序将在有限步骤内结束。
确定整个引导过程中景点将被启动多少次。
输入格式
输入从标准输入中以下列格式给出:
输出格式
输出所求答案。
样例
7 6
2 5 1 4 1 2 3
4
7 10
1 10 1 10 1 10 1
7
15 100
73 8 55 26 97 48 37 47 35 55 5 17 62 2 60
8
样例1解释
初始时,七个团体按以下顺序排队:
小高引导的部分过程如下图所示:
- 初始时,队伍前面的团体有2人,有6个空座位。因此,他引导前面的团体进入景点,剩下4个空座位。
- 接下来,队伍前面的团体有5人,超过了4个空座位,所以启动景点。
- 景点启动后,再次有6个空座位,所以引导前面的团体进入景点,剩下1个空座位。
- 接下来,队伍前面的团体有1人,所以他们被引导进入景点,剩下0个空座位。
总共,他在引导完成前启动景点四次。因此,输出4。
数据范围
,所有输入值都是整数。
来源
- AtCoder ABC353B