Write a program that, given a directed graph with positive costs at the arcs, and two vertices and , computes the minimum cost to go from to , and the number of ways of going from to with such minimum cost.
Input consists of several cases. Every case begins with the number of vertices and the number of arcs . Follow triples , indicating that there is an arc of cost , where and . Finally, we have and . Assume , , and that for every pair of vertices and there is at most one arc of the kind . All numbers are integers. Vertices are numbered from 0 to .
The condition for was previously . It was updated to create new test cases.
For every case, print the minimum cost to go from to , and the number of different paths that achieve this cost. This number will never exceed . If there is no path from to , state so.
Input
6 10 1 0 6 1 5 15 3 4 3 3 1 8 4 0 20 0 5 5 0 2 1 5 1 10 4 1 2 2 3 4 3 5 2 1 0 1 1000 1 0 3 3 0 2 100 0 1 40 1 2 60 0 2
Output
cost 16, 1 way(s) no path from 1 to 0 cost 100, 2 way(s)