本题共20个测试点,每个测试点5分。各个测试点的数据范围如下:
| 测试点编号 | $n \le$ | $k_i$ | 特殊条件 |
|:-:|:-:|:-:|:-:|
| 1 | 5 | 1,2,3 | 无 |
| 2 | 10 | 1,2,3 | 无 |
| 3 | 15 | 1,2,3 | 无 |
| 4 | 20 | 1,2,3 | 无 |
| 5 | 100 | 1,2,3 | 无 |
| 6 | 1000 | 1,2,3 | 无 |
| 7 | 2000 | 1,2,3 | 无 |
| 8 | 5000 | 1,2,3 | 无 |
| 9 | 1000000 | 1,2 | 结点 $i$ 与结点 $i-1$ 相连 |
| 10 | 100000 | 1,2 | 无 |
| 11 | 300000 | 1,2 | 无 |
| 12 | 1000000 | 1,2 | 无 |
| 13 | 100000 | 1,3 | 保证数据随机 |
| 14 | 1000000 | 1,3 | 无 |
| 15 | 20000 | 1,2,3 | 保证数据随机 |
| 16 | 200000 | 1,2,3 | 保证数据随机 |
| 17 | 100000 | 1,2,3 | 无 |
| 18 | 500000 | 1,2,3 | 无 |
| 19 | 800000 | 1,2,3 | 无 |
| 20 | 1000000 | 1,2,3 | 无 |
随机数据的生成方式如下:
对于第13个测试点,从一棵两个结点的树开始,每次随机一个树上的度数为1的结点(即叶结点),并生成两个与之直接相连的结点,直到这棵树上有 $n$ 个结点。显然,在这个测试点中,$n$ 是一个偶数。
对于第15和第16个测试点,从一棵一个结点的树开始,每次随机一个树上的度数不超过2的结点,并生成一个与之直接相连的结点,直到这棵树上有 $n$ 个结点。
我们提供了一个只包含输入和输出功能的程序 `binary\sample.cpp`。
关于该程序的说明,见 `readme.txt`。
你可以在答题时使用该程序的代码,也可以不使用,这将与你的得分无关。