Escriviu un programa que, donat un graf dirigit amb costs positius als arcs, i dos vèrtexs i , calculi un camí de cost mínim per anar des d’ fins a . Si n’hi ha més d’un, cal triar el més petit en ordre lexicogràfic.
L’entrada consisteix en diversos casos. Cada cas comença amb el nombre de vèrtexs i el nombre d’arcs . Segueixen triplets que indiquen que hi ha un arc de cost , amb i . Finalment, tenim i . Assumiu , , i que per a tot parell de vèrtexs i hi ha com a molt un arc . Tots els nombres són enters. Els vèrtexs es numeren entre 0 i .
Per a cada cas, escriviu el cost del camí més barat per anar des d’ fins a , seguit d’aquest camí. Si n’hi ha més d’un, escolliu el lexicogràficament més petit. Si no hi ha cap camí des d’ fins a , indiqueu-ho.
Comenceu en .
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 6 8 4 0 7 0 2 3 4 3 5 3 2 4 4 2 9 4 1 3 1 5 3 5 2 3 4 2 2 0 1 1
Output
cost 16: 3 4 1 0 5 no cost 9: 4 1 5 2 cost 0: 1