#P1467. 2024.9.27-秋招-第1题-绩效互评人员分配
-
ID: 133
Type: Default
1000ms
256MiB
Tried: 567
Accepted: 182
Difficulty: 6
Uploaded By:
TaZi
Tags>图结构二分图BFS
2024.9.27-秋招-第1题-绩效互评人员分配
题目内容
公司组织绩效互评,为了避免有同学或者同团队的人互相打高分,需要将员工分成两组分别打分。给定一个整数n和一个数组GoodRelationShips[][],其中,n表示人数,数组GoodRelationShips[][]是一个邻接表,GoodRelationShips[i]的元素[a,b,c]代表员工i和员工a,b,c是同学或者同团队。
请将这n个人分成两组,使其每组不再有同学或者同团队的人。
GoodRelationShips[][]的长度范围为[1,100]。
GoodRelationShips[i]中的元素的范围为[1,GoodRelationShips.length−1]。
GoodRelationShips[i]不会包含i或者有重复的值。
图是无向的:如果j在GoodRelationShips[1]里边,那么i也会在 GoodRelationShips[j]里边。
说明
保证给出的图是联通图
输入描述
数组形式的员工关系邻接表,第一行数字代表有N个顶点,顶点编号从0开 始,后续接N行。第i行代表第i−1个顶点和他有关系的同学的顶点编号
输出描述
分组方案按照节点编号从小到大排序,如两个方案第一个节点相同,则按照第二个节点排序,以此类推;方案内部也按照编号从小到大排序。输出排序最靠前的一种方案,如无法分成符合条件的两组,则输出−1
如输出如下两种方案时,选择第一种方案,因为方案一的分组2第一个节点编号更小:
分组1:1
分组2:2 3 4 5
和
分组1:1 2
分组2:3 4 5
如输出如下两种方案时,选择第二种方案,因为方案二的分组2第一个节点编号更小:
分组1:1 2
分组2:3 4 5
和
分组1:1 3
分组2:2 4 5
样例1
输入
4
1 3
0 2
1 3
0 2
输出
0 2
1 3
说明
无向图如下:
样例2
输入
4
1 2 3
0 2
0 1 3
0 2
输出
-1
说明
无向图如下:
通知
扫码备注华为交流群~期待您的到来
- 湘ICP备2023007293号
- Worker 0, 40ms
- Powered by Hydro v4.14.1 Community