CF1483D.Useful Edges
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given a weighted undirected graph on n vertices along with q triples (u,v,l) , where in each triple u and v are vertices and l is a positive integer. An edge e is called useful if there is at least one triple (u,v,l) and a path (not necessarily simple) with the following properties:
- u and v are the endpoints of this path,
- e is one of the edges of this path,
- the sum of weights of all edges on this path doesn't exceed l .
Please print the number of useful edges in this graph.
输入格式
The first line contains two integers n and m ( 2≤n≤600 , 0≤m≤2n(n−1) ).
Each of the following m lines contains three integers u , v and w ( 1≤u,v≤n , u=v , 1≤w≤109 ), denoting an edge connecting vertices u and v and having a weight w .
The following line contains the only integer q ( 1≤q≤2n(n−1) ) denoting the number of triples.
Each of the following q lines contains three integers u , v and l ( 1≤u,v≤n , u=v , 1≤l≤109 ) denoting a triple (u,v,l) .
It's guaranteed that:
- the graph doesn't contain loops or multiple edges;
- all pairs (u,v) in the triples are also different.
输出格式
Print a single integer denoting the number of useful edges in the graph.
输入输出样例
输入#1
4 6 1 2 1 2 3 1 3 4 1 1 3 3 2 4 3 1 4 5 1 1 4 4
输出#1
5
输入#2
4 2 1 2 10 3 4 10 6 1 2 11 1 3 11 1 4 11 2 3 11 2 4 11 3 4 9
输出#2
1
输入#3
3 2 1 2 1 2 3 2 1 1 2 5
输出#3
2
说明/提示
In the first example each edge is useful, except the one of weight 5 .
In the second example only edge between 1 and 2 is useful, because it belongs to the path 1−2 , and 10≤11 . The edge between 3 and 4 , on the other hand, is not useful.
In the third example both edges are useful, for there is a path 1−2−3−2 of length exactly 5 . Please note that the path may pass through a vertex more than once.