#df1933. 比赛组队(Team Selection)
比赛组队(Team Selection)
比赛组队(Team Selection)
题目描述
有一场数学团体赛,学校要从 个人中选出 个人组队参赛,这 个人中有 对人本身在校内就是一个团队的,因此在一个团队的同学要么都选,要么都不选。
请你编程选出尽可能和 接近的人数。
输入格式
第一行,三个正整数 。
第 至第 行,每行 个数,表示在校内就在一个团队的 个人的编号(编号为 )。
输出格式
一行,与原来的 尽可能接近的选出的人数。
如果有两种方案与 的差的绝对值相等,选较小的一种。
样例输入 #1
4 3 2
1 2
3 4
样例输出 #1
2
样例输入 #2
6 4 4
2 3
3 4
4 5
5 6
样例输出 #2
5
数据范围
。
知识点与难度
本题涉及的知识点从属于 并查集(连通块缩点)、背包 DP(可达性统计),难度等级:提高。
测试点分布
| Subtask | 分值 | 测试点编号 | 说明 |
|---|---|---|---|
| 0 | 10 | 1~2 | 样例 |
| 1 | 20 | 3~8 | 小规模 n≤10 / 特殊: k=0 全独立 / 特殊: 全员一队平局取小 / 特殊: 全等大团队平局 |
| 2 | 15 | 9~11 | Hack: 重边+自环密集 / Hack: n=1 自环边界 / Hack: 巨大团队+散人 |
| 3 | 30 | 12~20 | 中规模 n≈5000~10000 / 大规模 n=20000,k=20000 压力(含长链退化) |
| 4 | 25 | 21~25 | 随机 n=1~20000 回归 |