小太阳

时间限制: 1000 ms 内存限制: 65536 kb
总通过人数: 1 总提交人数: 1

题目描述

众所周知,士谔书院活跃着很多大佬,而每个大佬都闪耀着太阳的光芒~

那么问题来了:假设有好多好多个大佬,而每个大佬都散发着光芒,照亮着一段路径,那么他照亮的最长的路径长度有多长呢?

给定一个学蒻社交网,而社交网中,每个人都被学霸的光芒笼罩(可能这个社交网中会潜伏有大佬,所以这个光芒颜色可能包含1到n),求出其中每种颜色的光芒笼罩的网络中一条路径的上最多的节点个数

正常描述:

给定一棵树(树是一个n个节点,n-1条边的连通图,图...我不会说明)

树上每个节点有颜色,按颜色顺序(从小到大)输出其中每种颜色最长的连续的线段上节点个数

有以下特殊(水?)数据:

1、每个相同颜色笼罩的地方都不连续

2、光芒的颜色都在1到n之间

注意,同一种颜色所在的块可能不连续

不会爆栈

p.s.有特殊数据的意思就是说剩下的数据不一定是这样的啊QwQ

输入

第一行:一个数字T,表示数据组数(T<=20)

对于每组数据:

第一行:一个数字n,表示有n个节点(n<=100,000)

第二行:n个整数,分别表示对应编号的节点的颜色

以下n-1行,每行两个数字u和v,表示第u个节点和v个节点之间有一条边

输出

对于每组数据,按颜色大小顺序输出所有的颜色和笼罩的节点个数

首先输出当前组数

然后输出颜色个数行,每行输出一个颜色,格式是: 颜色:个数

比如颜色为1,长度为2,应当输出1:2

输出时每组数据之间有一个空行

输入样例

2
3
1 1 1
1 2
2 3
3
1 2 1
1 2
2 3

输出样例

Case 1:
color 1:3

Case 2:
color 1:1
color 2:1

相关推荐