#P005850. 跳跃的艺术

跳跃的艺术

当前没有测试数据。

题目描述

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

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

跳跃规则如下:

  1. 如果当前跳跃装置的能量为k,他会跳跃到距当前位置向前距离k处的另一平台。
  2. 跑道上的每个平台都装有一种机械装置,机械装置分为两种:
    • 弹簧板:当小A着陆在这类平台时,弹簧板会使他的跳跃装置能量增加v个点(0 ≤ v ≤ N),同时改变跳跃的方向(从向前跳跃变为向后跳跃,或从向后跳跃变为向前跳跃)。
    • 能量屏障:当小A着陆在这个平台时,只有当跳跃装置的能量不小于屏障所需的v(0 ≤ v ≤ N),他才能成功突破屏障。突破屏障不会改变他的能量和方向,平台属性不会改变,屏障会处于已突破状态,再次经过也不会增加突破屏障数量)。

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

特殊规则:

  • 如果小A的起始位置是一个可以突破的能量屏障,他会立即突破。
  • 如果他的起始位置是一个弹簧板,弹簧板的效果会在他进行第一次跳跃前触发。

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

输入格式

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

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

如果位置i上有一个弹簧板则qi = 0。 如果位置i上有一个能量屏障则qi = 1。 vi是位置i上的弹簧板或能量屏障的数值。

输出格式

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

样例

输入

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

输出

1

数据范围

  • 测试点1-5:N ≤ 100
  • 测试点6-10:N ≤ 1000
  • 测试点11-20:1 ≤ N ≤ 10^5,1 ≤ S ≤ N