数据结构与算法专题题库

1032. 传送门(三)

单点时限: 2.0 sec

内存限制: 512 MB

给定一个包含 n 的图 G(V,E) ,以及两个点 s,t ,现在你想要知道从 st 的最短时间。

但是现在在这个图中存在若干“传送门”,每个“传送门”可以表示为一个二元组 (x,y) ,表示可以从 x 传送到 y 且不花费任何时间,但是所有的“传送门”都最多选择一个使用(也可以不使用)

同时存在如下假设:

  • 在任意一个节点都可以选择是否使用“传送门”

输入格式

第一行一个整数task,满足task=3表示任务编号(对于完成这道题而言,你可以忽略这一行)。

第二行五个数n,m,p,s,tn表示点的个数,m表示边的个数,p表示传送门的个数,1s,tn

接下来m行,每行三个数ui,vi,ci,其中1ui,vin,1ci109,表示存在一条从uivi且花费时间ci的路径。

接下来p行,每行两个数xi,yi,其中1xi,yin,表示存在从xi转移到yi的传送门。

输出格式

若存在一条从st的路径,则输出一个整数表示最短时间消耗;否则输出inf

样例

Input
3
4 4 2 1 4
1 4 1000
1 2 100
2 3 100
3 4 100
1 2
2 3
Output
200

提示

数据范围:2n105,1m2×105,p2×105

答案可能超过int

传送门是单向的。

不限期开放

题目列表