道路与航线
You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.
题目描述
农夫约翰正在一个新的销售区域对他的牛奶销售方案进行调查。
他想把牛奶送到 T 个城镇,编号为 1∼T。
这些城镇之间通过 R 条道路 (编号为 1 到 R) 和 P 条航线 (编号为 1 到 P) 连接。 每条道路i或者航线i连接城镇 Aᵢ 到 Bᵢ,花费为 Cᵢ。
对于道路,0≤Cᵢ≤10,000;然而航线的花费很神奇,花费 Cᵢ可能是负数(−10,000≤Cᵢ≤10,000)。
道路是双向的,可以从 Aᵢ 到 Bᵢ,也可以从 Bᵢ 到 Aᵢ,花费都是 Cᵢ。
然而航线与之不同,只可以从 Aᵢ 到 Bᵢ。
事实上,由于最近恐怖主义太嚣张,为了社会和谐,出台了一些政策:保证如果有一条航线可以从 Aᵢ 到 Bᵢ,那么保证不可能通过一些道路和航线从 Bᵢ 回到 Aᵢ。
由于约翰的奶牛世界公认十分给力,他需要运送奶牛到每一个城镇。
他想找到从发送中心城镇 S 把奶牛送到每个城镇的最便宜的方案。
输入
第一行包含四个整数 T,R,P,S。
接下来 R 行,每行包含三个整数(表示一个道路)Aᵢ,Bᵢ,Cᵢ。
接下来 P 行,每行包含三个整数(表示一条航线)Aᵢ,Bᵢ,Cᵢ。
输出
第 1..T 行:第 i 行输出从 S 到达城镇i的最小花费,如果不存在,则输出 NO PATH。
样例
6 3 3 4
1 2 5
3 4 5
5 6 10
3 5 -100
4 6 -100
1 3 -10
NO PATH
NO PATH
5
0
-95
-100
数据范围
1≤T≤25000, 1≤R, P≤50000, 1≤Aᵢ,Bᵢ, S≤T
每个测试用例时间限制1s,内存限制256MB。
B组
- Status
- Done
- Rule
- OI
- Problem
- 5
- Start at
- 2024-10-25 19:00
- End at
- 2024-10-25 20:39
- Duration
- 1.7 hour(s)
- Host
- Partic.
- 21