A5906.彩色之树的魔法能量

普及/提高-

官方

通过率:0%

时间限制:1.00s ~ 1.00s

内存限制:512MB

题目描述

在遥远的狗星上,一颗神秘的彩色之树作为守护神镇守在这片大地。每个结点上都有一种独特的颜色,相传这些颜色都蕴藏着某种神秘的魔法能量。

狗星的居民们发现,这棵树有 nn 个彩色点,点与点两两可达。当他们选中树上两个颜色相同的不同结点时,它们之间会产生魔法连接。这种连接的能量来自于这两个结点简单路径上所有与路径端点具有相同颜色的结点。对于一个点对((x,y)(x,y)(y,x)(y,x) 视为同一点对),能量值即为它们之间的简单路径上这种颜色的结点数。

现在,为了更好地利用这种魔法能量,请计算出这棵彩色之树的所有不同点对能产生的总魔法能量是多少?

输入格式

第一行包含一个正整数 nn,表示树的结点个数.

第二行包含 nn 个用空格分隔的正整数, 第 ii 个数 cic_i 表示编号为 ii 的结点的颜色.

接下来 n1n - 1 行,每行包含两个正整数 ui,vi(1ui,vin)u_i, v_i (1 \leq u_i, v_i \leq n) - 表示 uuvv 间存在一条边.

输出格式

输出仅一行,包含一个整数,表示能产生的总魔法能量。

输入输出样例

  • 输入#1

    5
    1 1 1 1 1
    1 2
    1 3
    3 4
    3 5

    输出#1

    28

说明/提示

样例描述的树为:

        1
      /   \
     1     1
          /  \
         1    1

产生的权值为:
(1,?)2+2+3+3=10(1, ?):2 + 2 + 3 + 3 = 10

(2,?)3+4+4=11(2, ?):3 + 4 + 4 = 11

(3,?)2+2=4(3, ?):2 + 2 = 4

(4,?)3(4, ?):3

总和为 2828

评测数据规模

保证对于所有数据满足:1n1051 \leq n \leq 10^51ci1001 \leq c_i \leq 1001u,vn1 \leq u, v \leq n

测试点编号 nn \leq cic_i \leq
141 \sim 4 10001000 22
585 \sim 8 10510^5 22
9149 \sim 14 10001000 100100
152015 \sim 20 10510^5 100100
首页