서버
시간 제한1초메모리 제한128 MB
가중치가 있는 연결 그래프의 각 서버에서, 더 가깝거나 같은 거리에 있으면서 순위가 더 높은 서버가 없는 정점 W를 세어 모두 더한다.
문제
바이트랜드 왕국은 여러 가지 서비스를 제공하는 대규모 서버 컴퓨터 네트워크를 구축하기로 했습니다.
이 네트워크는 개의 서버가 양방향 케이블로 연결되어 이루어집니다. 두 서버는 최대 하나의 케이블로만 직접 연결될 수 있고, 각 서버는 최대 개의 다른 서버와 직접 연결됩니다. 또한 임의의 두 서버는 네트워크 상의 어떤 경로로든 서로 연결되어 있습니다(즉, 연결 그래프입니다). 각 케이블에는 밀리초 단위의 양의 데이터 전송 시간이 정해져 있습니다.
두 서버 와 사이의 거리 는 두 서버를 잇는 경로 중 전송 시간의 합이 가장 작은(최단) 경로의 길이(밀리초)로 정의합니다. 편의상 모든 에 대해 으로 둡니다.
각 서버 에는 자연수 가 매겨져 있으며, 이를 등급(rank)이라고 합니다. 등급이 높을수록 더 강력한 서버입니다.
각 서버는 주변 서버들에 대한 정보를 저장해야 하지만, 모든 서버가 저장 대상은 아닙니다. 멀리 있으면서 등급이 낮은 서버의 정보는 저장할 필요가 없습니다. 정확히 말하면, 서버 가 서버 에게 흥미로운(interesting) 서버라는 것은 를 만족하는 모든 서버 에 대해 가 성립하는 것을 뜻합니다.
예를 들어, 최대 등급을 가진 서버는 모든 서버에게 흥미롭습니다. 만약 서버 가 최대 등급이라면, 에게 흥미로운 서버는 정확히 최대 등급을 가진 서버들뿐입니다. 를 서버 에게 흥미로운 서버들의 집합이라고 합시다.
네트워크 전체에서 저장해야 하는 서버 정보의 총량, 즉 모든 집합 의 크기의 합 을 구하려고 합니다. 바이트랜드 왕국은 이 값이 을 넘지 않도록 네트워크를 구성했습니다.
표준 입력으로 서버 네트워크의 정보를 읽어, 저장해야 하는 서버 정보의 총량을 계산한 뒤 표준 출력으로 출력하는 프로그램을 작성하세요.
입력
첫째 줄에 두 자연수 , 이 공백 하나로 구분되어 주어집니다. 은 네트워크의 서버 수(), 은 케이블의 수()입니다.
다음 개의 줄에는 각 서버의 등급이 주어집니다. 번째 줄에는 정수 (), 즉 번 서버의 등급이 하나씩 주어집니다.
그다음 개의 줄에는 케이블의 정보가 주어집니다. 각 케이블은 세 정수 , , (, , )로 표현되며, 와 는 케이블이 연결하는 두 서버의 번호, 는 그 케이블의 전송 시간(밀리초)입니다.
출력
네트워크에서 저장해야 하는 서버 정보의 총량과 같은 정수 하나를 출력합니다.
힌트
등급이 각각 인 네 서버로 이루어진 네트워크에서는 , , , 이므로 저장해야 하는 정보의 총량은 입니다.