资源二分类隔离判定
2026 华为OD机试真题 6月3日华为OD上机新系统考试真题 100 分题型
点击查看华为 OD 机试真题完整目录:2026最新华为OD机试新系统卷 + 双机位C卷 真题题库目录|全覆盖题库 + 逐点算法考点详解
题目描述
实现一段调度模块功能,将一批资源单元划分到两个隔离资源池中;某些资源单元之间存在互斥关系,例如会竞争同一段频谱 、同一类加速卡、同一条转发链路,或者在同一资源池内运行会造成调度冲突;
现在有多组资源部署任务,其中第组任务中: 有resourceCount个资源单元,资源编号从1 到resourceCount[i];例如resourceCount[]为4时,表示有4个资源,分别为资源1.2.3,4;·conflicts[]表示第组任务的互斥资源对,不能放入同一个资源池;例如conflicts[i]为[(1.2).(1.3)]时,表示资源1和资源2互斥,资源1和资源3互斥;
请你判断每一组资源部署任务是否可以被划分到两个隔离资源池中,使得每一对互斥资源都位于不同资源池。对于每一组任务:
.如果可以完成划分,返回1。
.如果无法完成划分,返回0。
最终返回一个数组,其中第i个值表示第i组任务是否可以被两个资源池完全隔离。
补充说明(约束条件)
-
1 <= resourceCount.length <= 100
-
1 <= resourceCount[i] <= 104
-
0 <= conflicts[i].length <= 2∗104
-
1 <= conflicts[i][x],conflicts[i][y] <= resourceCount[i]
5.所有 resourceCount[i] 之和不超过 105
6.所有 conflicts[i].length 之和不超过 2∗105
示例1
输入
[4,3,5],[(1,2),(1,3),(2,4)],[(1,2),(2,3),(1,3)],[(1,2),(3,4)]
输出
[1,0,1]
说明
第 1 组任务 resourceCount[0] = 4 ,表示有 1,2,3,4 资源, conflicts[0] =[(1,2),(1,3),(2,4)],表示第 1 组资源 1 和 2 , 1 和 3 , 2 和 4 两两互斥,第 1 组任务可以划分,例如: 资源池 1 :[1,4] 资源池 2 :[2,3]
第 2 组任务无法划分,因为资源 1、2、3 两两互斥,只用两个资源池无法完成隔离。
第 3 组任务可以划分,例如: 资源池 1 :[1,3,5] 资源池 2 :[2,4]
示例2
输入
[2,2,4],[(1,2)],[],[(1,2),(2,3),(3,4),(4,1)]
输出
[1,1,1]
说明
第 1 组任务没有冲突,可以划分。
第 2 组任务中资源 1 和资源 2 分别放入不同资源池即可。
第 3 组任务形成偶数环,可以被两个资源池隔离。
示例3
输入
订阅专栏 解锁全文

45万+

被折叠的 条评论
为什么被折叠?



