지름길 건설

아직 제출이 없습니다시간 제한3초메모리 제한1024 MB

문제

KITPA 나라에는 $1$부터 $N$까지의 번호가 붙은 $N$개의 마을이 있고, 마을 중 $M$개는 중심 마을이 다. 각 마을은 $K$개의 양방향 도로로 연결되어 있고, 진흥이는 마을의 교류를 편하게 하도록 KITPA 나라에 지름길을 새로 건설하려고 한다.

각 도로에는 길이가 주어져 있으며, 각 마을에서 다른 모든 마을로 도로만을 통해 이동할 수 있다. 두 마을 사이에는 많아야 $1$개의 도로만이 있으며, 두 마을 사이의 거리는 마을 사이를 도로만 통하여 이동하는 가장 짧은 경로에 포함된 도로의 길이 합이다. 단, 마을 $A$와 $A$사이의 거리는 $0$이다. 어떤 마을 $A$와 중심 마을 $B$ 사이의 거리가 $A$와 다른 모든 중심 마을 사이의 거리보다 작다면 $A$는 $B$에 속한다고 하자. 어떤 중심 마을에도 속하지 않는 마을이 있을 수 있다.

진흥이는 KITPA 나라의 원하는 두 마을을 골라 아직 두 마을 사이에 도로가 없다면 두 마을 사이에 지름길을 건설하도록 요청할 수 있다. 이때 모든 지름길들을 건설하기 전 지름길이 연결하는 두 마을에 각각 직접 연결된 모든 도로의 길이 중 가장 작은 값보다 지름길의 길이가 짧거나 같아야 KITPA 나라에서 건설을 허가한다. 각 중심 마을끼리는 세력을 견제하고 있어, 지름길을 건설한 이후 다음 조건들을 만족해야 한다.

  1. 지름길을 건설하기 전과 다른 중심 마을에 속하게 되는 마을이 없어야 한다. 어떤 중심 마을에도 속하지 않는 마을이 새로이 생기는 것은 가능하다.
  2. 각 마을에서 가장 가까운 중심 마을까지의 거리는 지름길을 건설하기 전과 후가 같아야 한다.

진흥이가 조건에 맞게 최대한 많은 지름길을 건설하도록 요청했을 때, KITPA 나라가 건설을 허가하는 지름길의 수를 구하여라.

입력

첫 번째 줄에 마을의 수 $N$, 중심 마을의 수 $M$, 도로의 수 $K$가 주어진다. ($2 \le M \le N \le 100\,000$; $N-1 \le K \le 200\,000$)

두 번째 줄에 중심 마을의 마을 번호를 나타내는 정수 $M$개가 공백으로 구분되어 주어진다. 중심 마을의 번호는 서로 다르다.

세 번째 줄부터 $K$개 줄 각각에는 도로가 연결하는 두 마을의 번호 $u$, $v$와 도로의 길이를 나타내 는 정수 $w$가 공백으로 구분되어 주어진다. ($1 \le u, v \le N$; $u \ne v$; $1 \le w \le 1\,000\,000\,000$)

출력

진흥이가 조건에 맞게 최대한 많은 지름길을 건설하도록 요청했을 때, KITPA 나라가 건설을 허가하는 지름길의 수를 출력한다.