#1338. 【例题5】跳房子

【例题5】跳房子

【例题5】跳房子

题目描述

跳房子,也叫跳飞机,是一种世界性的儿童游戏,也是中国民间传统的体育游戏之一。

跳房子的游戏规则如下:

在地面上确定一个起点,然后在起点右侧画nn个格子,这些格子都在同一条直线上。每个格子内有一个数字(整数),表示到达这个格子能得到的分数。玩家第一次从起点开始向右跳,跳到起点右侧的一个格子内。第二次再从当前位置继续向右跳,依此类推。规则规定:

玩家每次都必须跳到当前位置右侧的一个格子内。玩家可以在任意时刻结束游戏,获得的分数为曾经到达过的格子中的数字之和。

现在小RR研发了一款弹跳机器人来参加这个游戏。但是这个机器人有一个非常严重的缺陷,它每次向右弹跳的距离只能为固定的dd。小RR希望改进他的机器人,如果他花gg个金币改进他的机器人,那么他的机器人灵活性就能增加gg,但是需要注意的是:每次弹跳的距离至少为11。具体而言,当g<dg < d时,他的机器人每次可以选择向右弹跳的距离为dgd-gdg+1d-g+1dg+2d-g+2\ldotsd+g2d+g-2d+g1d+g-1d+gd+g;否则(当gdg \geq d时),他的机器人每次可以选择向右弹跳的距离为112233\ldotsd+g2d+g-2d+g1d+g-1d+gd+g

现在小RR希望获得至少kk分,请问他至少要花多少金币来改造他的机器人。

输入格式

第一行三个正整数nnddkk,分别表示格子的数目,改进前机器人弹跳的固定距离,以及希望至少获得的分数。相邻两个数之间用一个空格隔开。

接下来nn行,每行两个整数,分别表示起点到第ii个格子的距离以及第ii个格子的分数。两个数之间用一个空格隔开。保证按递增顺序输入。

输出格式

共一行,一个整数,表示至少要花多少金币来改造他的机器人。若无论如何他都无法获得至少kk分,输出1-1

数据范围与提示

对于100%100\%的数据:

  • 1n5000001 \leq n \leq 500000
  • 1d20001 \leq d \leq 2000
  • 1xi,k1091 \leq x_i, k \leq 10^{9}
  • si<105|s_i| < 10^{5}

特殊数据范围:

  • 对于第1122组测试数据,n10n \leq 10
  • 对于第334455组测试点数据,n500n \leq 500
  • 对于第667788组测试数据,d=1d = 1

样例

7 4 10
2 6
5 -3
10 3
11 -3
13 1
17 6
20 2
2
7 4 20
2 6
5 -3
10 3
11 -3
13 1
17 6
20 2
-1