SHPATH  The Shortest Path
You are given a list of cities. Each direct connection between two cities has its transportation cost (an integer bigger than 0). The goal is to find the paths of minimum cost between pairs of cities. Assume that the cost of each path (which is the sum of costs of all direct connections belongning to this path) is at most 200000. The name of a city is a string containing characters a,...,z and is at most 10 characters long.
Input
s [the number of tests <= 10] n [the number of cities <= 10000] NAME [city name] p [the number of neighbours of city NAME] nr cost [nr  index of a city connected to NAME (the index of the first city is 1)] [cost  the transportation cost] r [the number of paths to find <= 100] NAME1 NAME2 [NAME1  source, NAME2  destination] [empty line separating the tests]
Output
cost [the minimum transportation cost from city NAME1 to city NAME2 (one per line)]
Example
Input: 1 4 gdansk 2 2 1 3 3 bydgoszcz 3 1 1 3 1 4 4 torun 3 1 3 2 1 4 1 warszawa 2 2 4 3 1 2 gdansk warszawa bydgoszcz warszawa Output: 3 2
Warning: large Input/Output data, be careful with certain languages
hide comments
shubham2305:
20160815 10:29:01
AC in 0.46 sec


sam_29:
20160802 17:32:46
The logic of the question is simple however its a very nice question because of the optimizations required to pass in the given Time Limit.


mrinal_aich:
20160722 21:11:27
The best optimization problem for programming contest coders. It helped me to move from slower to faster methods. _/\_


puneethnaik:
20160714 05:46:08
my 50th!


rishabhjain996:
20160706 10:59:34
unordered_map + priority q +dijkstra :) 

akashmandal21:
20160618 22:36:46
Dijkstra's with priority queue and fast i/o optimization for c++


pamyjeela:
20160615 13:31:42
finally hallelujah............... 

lynx_:
20160603 12:25:48
std::set is bitch ... priority_queue (_/\_) 

noob909:
20160602 08:54:40
dijkstra+map+fast i/o 

xinnix:
20160601 08:39:12
For source and designation, are they input as same string? 
Added by:  Darek Dereniowski 
Date:  20040510 
Time limit:  1.5s 
Source limit:  50000B 
Memory limit:  1536MB 
Cluster:  Cube (Intel G860) 
Languages:  All 
Resource:  DASM Programming League 2003 (problemset 11) 