숙제
시간 제한3초메모리 제한1024 MB
정점마다 값이 적힌 트리가 주어질 때, 모든 경로 i에서 j까지 (최댓값 - 최솟값) × 경로의 정점 수를 구해 합산합니다.
문제
린은 이제 다 커서 곧 대학에 들어간다. 하지만 입학은 그리 쉽지 않다. 그래서 린은 준비하려고 지난 해 문제들을 풀어 보기로 했다.
작년 입학 시험 문제 중 하나는 다음과 같았다. 트리가 주어지고, 번 정점에는 정수 가 적혀 있다. 참가자는 다음 합을 구해야 했다.
여기서 는 에서 까지 가는 경로 위에 있는 모든 정점 의 중 최댓값이다. 는 같은 값들 중 최솟값이다. 는 에서 까지 가는 경로에 있는 정점의 개수이다.
린은 몇 시간째 이 문제를 풀고 있지만 아직 해결하지 못했다. 린을 도와주자.
입력
첫째 줄에 트리의 정점 개수 ()이 주어진다. 둘째 줄에는 각 정점에 적힌 개의 정수 ()가 주어진다. 다음 개 줄에는 트리의 간선을 나타내는 정수 쌍 ()가 한 줄에 하나씩 주어진다.
출력
구한 합의 값을 한 줄에 출력한다.