时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
故障机器人正在玩一款名为《Slay the Spire》的游戏,他的目标是成为杀戮尖塔第四厉害的高手。
游戏地图由

个节点组成,故障机器人从节点

出发,目标是到达节点

。
该游戏满足以下性质:
1. 地图由

条有向边组成,故障机器人可以通过有向边从一个节点移动到另一个节点。
2. 定义

为从节点

到节点

的简单路径的距离(保证从节点

到节点

的所有简单路径距离相同,并且对于

都有

)。
3. 所有有向边 (

) 满足

。
4. 故障机器人有一个战斗力属性

。
5. 每个节点

有两个属性战力要求和收益,用

和

表示:
故障机器人想知道他是否能够从节点

到达节点

。
补充说明:
-
保证节点

到任何一个节点都存在一条路径。
-
保证任何节点都存在一条路径能够到达节点

。
-
保证图中不存在自环和重边。
输入描述:
第一行,输入三个整数

,

和

(

,

,

),分别表示节点数,边数和角色初始战斗力。
接下来
行,每行输入两个整数
和
(
),表示节点
的战斗力要求和收益。 接下来

行,每行输入两个整数

和

(

),表示一条从

到

的有向边。
输出描述:
一行,如果故障机器人能够到达节点
,输出 "YES"(不含引号),否则输出 "NO"(不含引号)。
示例1
输入
复制
7 9 10
1 5
15 10
20 1
21 20
30 15
1 2
27 -100
1 2
1 3
1 4
2 5
3 5
4 6
3 6
5 7
6 7
示例2
输入
复制
5 5 888
755 -859
15 16
20 805
54 -348
1000 -896
1 2
1 3
2 4
3 4
4 5
说明
此样例中,故障机器人无论如何操作都无法到达节点
。