Reference no: EM133028243
Routing
Part I. Widest PathRouting
N large files (1≤N≤105), numbered 1...N, are scattered on N distinct storages throughout a network that connects these storages. These storages are also numbered 1...N, such that file fi is at storage si. M links (1≤M≤105), numbered 1...M, where link i bidirectionally connects storage aiwith storage bi, and has a bandwidth wi(1≤ai,bi≤N,ai ≠ bi,1≤wi≤109). Bandwidthwitakes on integer values.
At any point in time, two files located at twostorages directly connected by a link may simultaneously swap places through the link. That is, the file on storage acan be transferred to storage b and the file on b can be transferred to a using the link that connects a and b. The files must perform such swaps until fiis at storage i for 1≤i≤N. That is, the files must eventually be placed at their "rightful" storage using the network.
To reduce the time to accomplish the task of moving files to their rightful storages, you are asked to design and implement an algorithm to maximize the bandwidth of the least wide link which the file transfer must use to move the files to their "rightful" storages speedily. It is guaranteed that it is possible for the files to move to their rightful storages.
INPUT FORMAT (file storage.txt):
The first line has two integers, N and M. The second line contains the N integers s1s2,..., sN. It is guaranteed that one storage contains one file.
Line i+2 contains the integers ai, bi, and wiwhere1≤i≤M.
OUTPUT FORMAT (file storageout.txt):
Outputone integer number: the maximum minimal bandwidth of a link which a file must use to move itself to its "rightful" storage. If the files are already in their "rightful" storages, then output -1.
SAMPLE INPUT 1:
4 4
3 2 1 4
1 2 9
1 3 7
2 3 10
2 4 3
SAMPLE OUTPUT 1:
9
In this example, one can move the files as follows to their rightful storages using links of bandwidth at least 9.
File 1 and file 2 swap locations using the 3rd link.
File 1 and file 3 swap locations using the 1stlink.
File 2 and file 3 swap locations using the 3rd link.
Output one integer number: the maximum minimal bandwidth of a link which a file must use to move itself to its "rightful" storage
SAMPLE INPUT2:
4 1
1 2 3 4
4 2 13
SAMPLE OUTPUT 2:
-1
Attachment:- Routing lab.rar