Statement
정점이 개인 루트 있는 트리가 주어진다. 루트는 번 정점이고, 번 정점의 부모는 번 정점이다.
각 정점은 이상 이하의 색을 하나 가지고 있다. 번 정점의 색은 이며, 번 색은 모두 적어도 한 번씩 등장한다.
정점 와 색 에 대해 를 다음과 같이 정의한다.
- 에서 루트까지 가는 경로 위에 색이 인 정점이 존재한다면, 그중 와 가장 가까운 정점의 번호이다.
- 그러한 정점이 존재하지 않는다면 이다.
여기서 자신도 의 조상으로 간주한다.
두 정점 에 대해 를 다음과 같이 정의한다.
모든 순서쌍 에 대해 의 합을 구하여라. 즉, 다음 값을 출력해야 한다.
Input
입력은 다음과 같은 형식으로 주어진다.
Output
모든 순서쌍 에 대한 의 합을 출력한다.
Constraints
- .
- ().
- 번 색은 모두 적어도 한 번씩 등장한다.
- ().
- 입력으로 주어지는 모든 값은 정수이다.
Subtasks
Samples
예제 1
입력
3 2
1 1 2
1 1
출력
10
색 에 대해 , , 이다.
색 에 대해 , , 이다.
각 색에 대해 같은 값을 가지는 순서쌍의 개수를 더하면 이다.
예제 2
입력
5 3
1 2 1 3 2
1 1 2 2
출력
43
예제 3
입력
1 1
1
출력
1