만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

경로의 마법

시간 제한4초메모리 제한256 MB

요약
트리에서 (경로 위 노드 값의 곱)/(경로 길이)를 최소로 하는 단순 경로를 찾아 기약분수로 출력한다.
난이도

보통10점 중 7점

유형
수학, DFS, 그리디
정답자
아직 제출이 없습니다

문제

정점마다 마법이 정해진 무방향 트리가 주어진다. ii번 정점의 마법은 XiX_i이다.

경로의 마법은 그 경로에 놓인 정점의 마법을 모두 곱한 값을 경로의 정점 개수로 나눈 값이다. 예를 들어 마법이 3인 정점과 마법이 5인 정점으로 이루어진 경로의 마법은 3×5/2=7.53 \times 5 / 2 = 7.5이다.

주어진 트리에서 마법이 가장 작은 경로를 찾고, 그 경로의 마법을 출력하라.

입력

첫째 줄에 트리의 정점 개수 NN이 주어진다. (1≤N≤1061 \le N \le 10^6)

다음 N−1N-1개 줄에는 간선 하나로 이어진 두 정점의 번호 AiA_i와 BiB_i가 주어진다. (1≤Ai,Bi≤N1 \le A_i, B_i \le N)

이어지는 NN개 줄 가운데 ii번째 줄에는 ii번 정점의 마법 XiX_i가 주어진다. (1≤Xi≤1091 \le X_i \le 10^9)

입력으로 주어지는 그래프는 항상 트리이다.

출력

마법이 가장 작은 경로의 마법을 기약분수 P/Q 꼴로 한 줄에 출력한다. PP와 QQ는 서로소인 양의 정수이고, 분모가 1인 경우에도 /1을 그대로 적는다. 모든 테스트 데이터에서 PP와 QQ는 101810^{18}보다 작다.

힌트

경로는 한 정점에서 시작해 같은 정점에서 끝날 수 있다. 즉 정점 하나로만 이루어진 경로도 답의 후보이다.

예제2

  1. 예제 1

    입력
    2
    1 2
    3
    4
    
    예상 출력
    3/1
    
  2. 예제 2

    입력
    5
    1 2
    2 4
    1 3
    5 2
    2
    1
    1
    1
    3
    
    예상 출력
    1/2