ZOJ Problem Set - 2809
King Kong is the feared but fair ruler of Transylvania. The king-dom consists of two cities and N < 150 towns, with nonin-tersecting roads between some of them. The roads are bidirectional, and it takes the same amount of time to travel them in both direc-tions. Kong has G < 353535 sol-diers.
Due to increased smuggling of goat cheese between the two cities, Kong has to place his sol-diers on some of the roads in such a way that it is impossible to go from one city to the other without pass-ing a soldier. The soldiers must not be placed inside a town, but may be placed on a road, as close as Kong wishes, to any town. Any number of soldiers may be placed on the same road. However, should any of the two cities be attacked by a foreign army, the king must be able to move all his soldiers fast to the attacked city. Help him place the soldiers in such a way that this mobilizing time is minimized.
Note that the soldiers cannot be placed in any of the cities or towns. The cities have ZIP-codes 95050 and 104729, whereas the towns have ZIP-codes from 0 to N - 1. There will be at most one road between any given pair of towns or cities.
The input contains several test cases. The first line of each test case is N, G and E, where N and G are as defined above and E < 5000 is the number of roads. Then follow E lines, each of which contains three integers: A and B, the ZIP codes of the endpoints, and phi, the time required to travel the road, phi < 1000. The last line of the input is a line containing a single 0.
For each test case in the input, print the best mobilizing time possible, with one decimal. If the given number of soldiers is not enough to stop the goat cheese, print "Impossible" instead.
4 2 6
Source: Nordic 2005