2842 - 跳跃的艺术

题目描述

在一个充满机械装置的小镇中,发明家小 A 正在测试一台新型的机械跳跃装置。这台装置能够让他沿着一条由 N 个平台组成的直线跑道(从左到右编号为 1, 2, \cdots, N)不断跳跃,任意两个相邻的平台间距离均为 1

小 A 从某个平台 S1 \leq S \leq N)开始测试,最初跳跃装置的能量为 1 个点向右跳跃

跳跃规则如下:

  1. 如果当前跳跃装置的能量为 k,他会跳跃到距当前位置向前距离 k 处的另一平台。

  2. 跑道上的每个平台都装有一种机械装置,机械装置分为两种:

    • 弹簧板:当小 A 着陆在这类平台时,弹簧板会使他的跳跃装置能量增加 v 个点(0 \leq v \leq N),同时改变跳跃的方向(从向前跳跃变为向后跳跃,或从向后跳跃变为向前跳跃)。

    • 能量屏障:当小 A 着陆在这个平台时,只有当跳跃装置的能量不小于屏障所需的 v0 \leq v \leq N),他才能成功突破屏障。突破屏障不会改变他的能量和方向,平台属性不会改变,(屏障会处于已突破状态,再次经过也不会增加突破屏障数量)。

小 A 会不断跳跃,直到他跳出跑道或者陷入无限循环

特殊规则:

  1. 如果小 A 的起始位置是一个可以突破的能量屏障,他会立即突破。

  2. 如果他的起始位置是一个弹簧板,弹簧板的效果会在他进行第一次跳跃前触发。

你的任务是:计算小A在这次测试中最多能突破多少个能量屏障。

输入

输入的第一行包含两个整数 NS,其中 N 为跑道的长度,S 为小 A 的起始位置。

以下 N 行描述了每一个平台的信息。其中第 i 行包含整数 q_iv_i

如果位置 i 上有一个弹簧板则 q_i=0

如果位置 i 上有一个能量屏障则 q_i=1

v_i 是位置 i 上的弹簧板或能量屏障的数值。

输出

输出一个整数,为被突破屏障的数量。

样例

输入

5 2
0 1
1 1
1 2
0 1
1 1

输出

1

输入

6 4
0 3
1 1
1 2
1 1
0 1
1 1

输出

3

输入

20 10
0 6
0 1
1 3
1 7
0 8
0 2
1 2
1 4
0 8
1 1
1 1
1 6
0 6
0 2
0 8
0 7
1 8
0 1
1 1
1 7

输出

2
说明

样例 1 解释

小 A 从 2 号平台开始,这是一个能量为 1 的屏障,所以他突破了这个屏障。

然后弹跳至 3 号平台,这是一个能量为 2 的屏障,无法击破。

继续弹跳至 4 号平台,弹簧板改变方向并将能量增加了 1,达到 2。跳回至 2 号平台,这是一个已经被突破的屏障,所以继续弹跳。

此时,弹跳至了 0,因此停了下来。共突破了一个屏障,位于 2 号平台。

样例 2 解释

小 A 经过的平台为 4 \to 5 \to 3 \to 1 \to 6,下一次弹跳将会使其离开跑道(11)。依次突破了能量屏障 4,3,6

测试点性质

  • 测试点 1-5N\le 100
  • 测试点 6-10N\le 1000
  • 测试点 11-201\le N\le 10^51 \le S \le N
标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 0
通过人数 0
金币数量 1 枚
难度 入门


上一题 下一题