#P12670. [集训队互测2025day8]熟练

    ID: 11856 传统题 2000ms 1024MiB 尝试: 2 已通过: 1 难度: 10 上传者: 标签>CF3200图论贪心树链剖分数据结构构造字典树差分

[集训队互测2025day8]熟练

给定大小为 nn 的树和 mm 条树上的简单路径。你需要给每条路径分配一个颜色 cic_i,使得任意两条颜色相同的路径,不经过相同的点。

求最少需要几种颜色,并构造方案。

输入格式

本题有多组测试数据。

输入的第一行包含一个整数 cc,表示子任务编号。c=0c=0 表示该测试点为样例。

输入的第二行包含一个整数 tt,表示测试数据组数。

接下来依次输入每组测试数据,对于每组测试数据:

输入的第一行包含两个正整数 n,mn, m

接下来 n1n-1 行,第 ii 行包含两个正整数 ui,viu_i, v_i,表示树的第 ii 条边为 (ui,vi)(u_i, v_i)

接下来 mm 行,第 ii 行包含两个正整数 ai,bia_i, b_i,表示第 ii 条路径为 aia_ibib_i 的简单路径。

输出格式

对于每组测试数据:

第一行包含一个正整数 kk,表示最少需要几种颜色。

第二行包含 mm 个正整数,第 ii 个数为第 ii 条链的颜色 cic_i,你需要保证 1cik1 \le c_i \le k

如果你输出的 kk 正确,cic_i 序列符合格式但不符合题目要求,可以获得该测试点 15%15\% 的分数。

样例

输入

0  
3  
3 3  
1 2  
2 3  
3 2  
2 1  
2 3  
7 4  
1 2  
1 3  
2 4  
2 5  
5 6  
6 7  
6 3  
3 6  
5 2  
5 6  
10 3  
1 2  
1 3  
1 4  
3 5  
3 6  
5 7  
5 8  
7 9  
1 10  
8 3  
1 2  
6 8

输出

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

数据范围

对于所有数据,$1 \le t \le 10^5, 1 \le n, m, \sum n, \sum m \le 5 \times 10^5, 1 \le u_i, v_i, a_i, b_i \le n$。

  • subtask1 (3 pts):n,m5n, m \le 5
  • subtask2 (14 pts):m5m \le 5
  • subtask3 (9 pts):1i<n,ui=i,vi=i+1\forall 1 \le i < n, u_i = i, v_i = i+1
  • subtask4 (20 pts):n,m1000,n,m5000n, m \le 1000, \sum n, \sum m \le 5000
  • subtask5 (22 pts):n,m105\sum n, \sum m \le 10^5
  • subtask6 (32 pts):无特殊限制。