Trucking Troubles | 프로그래밍의 벗 PivotOJ
PivotOJ

Trucking Troubles

시간 제한: 1000ms메모리 제한: 128MB출처: CCC 2003 SeniorBOJ 6909

문제

You are a salesperson selling trucks which can carry trucks which can carry trucks. Needless to say, your trucks are heavy. Also needless to say, you have to drive one of these trucks across a wide wet domain, and since it is wet, you need to drive over some bridges. In fact, on every road between two cities, there is a bridge but there is not a direct road between every pair of cities. Each bridge can support a certain maximum weight. This maximum weight is an integer from 00 to 100000100\,000.

You have been given a list of cities where there are customers who are eager to view one of your trucks. These cities are called destination cities. Since you must decide which truck you will drive through these cities, you will have to answer the following problem: what is the maximum weight that can be driven through these destination cities? You are to write a program to solve this problem.

The first line of input will contain three positive integers: cc, rr and dd specifying the number of cities (in total), number of roads between cities and number of destination cities, respectively. The cities are numbered from 11 to cc. There are at most 1000010\,000 cities and at most 100000100\,000 roads. The next rr lines contain triples x y wx\ y\ w indicating that this road runs between city xx and city yy and it has a maximum weight capacity of ww. The next dd lines give the destination cities you must visit with your truck. There will be at least one destination city.

You can assume that you are starting in city 11 and that city 11 is not a destination city. You can visit the dd destination cities in any order, but you must visit all dd destination cities.

The output from your program is a single integer, the largest weight that can be driven through all dd destination cities.

예제

예제 1

입력
5 7 3
1 2 20
1 3 50
1 4 70
1 5 90
2 3 30
3 4 40
4 5 60
2
4
5
출력
30
코드를 제출하려면 로그인하세요.