华为OD算法开发指导-任务规划

算法描述

给定n台机器,其编号由0到n-1,每台机器执行工作任务的流程分为两个阶段,第一阶段是配置阶段STEP1,该阶段所有机器是串行工作,第二阶段是运行阶段STEP2,该阶段是并行工作,现在需要分配机器的工作任务,使得所有机器执行工作任务的总时间最小。

输入描述

第一行输入M,表示M组任务数据,第二行开始输入每组任务的详细数据,每组任务的第一行输入N,表示N台机器,每组任务的第二行输入机器的配置阶段STEP1与运行阶段STEP2的执行工作任务的时间数据。

输出描述

每行输出M组任务执行工作的最小总时间。

测试用例

|--------------------------------|
| 输入: 2 2 3 2 2 3 1 6 7 输出: 7 13 |

算法逻辑分析

|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 配置阶段STEP1是串行任务,在该阶段每台机器是依次执行任务,其执行的总时间不变,运行阶段STEP2是并行任务,在该阶段所有机器是同时执行任务,则执行时间最长的机器应优先运行。 使用三维数组的数据结构保存M组任务的数据,例如,[[[3,2],[2,3]],[[6,6]]],其中 ,第二维数组的元素[[3,2],[2,3]]表示一组任务的详细数据,第三维数组的元素表示每台机器的配置阶段STEP1与运行阶段STEP2的执行工作任务的时间数据,以此类推。 对第二维数组的数组元素的运行阶段STEP2的数据执行大小排序,运行阶段STEP2的执行时间最长的机器应排在最前面,表示优先运行。 计算配置阶段STEP1的任务执行总时间,计算运行阶段STEP2的任务执行总时间,其中,所有机器在运行阶段STEP2的并行执行时间段,只计算一次该执行时间段的时间。 |

Java算法代码

算法主函数:

排序主函数:

计算主函数:

生成测试数据函数:

算法测试

测试用例:

相关推荐
嵌入式进阶行者1 天前
【算法】用三种解法解决字符串替换问题的实例:华为OD机考双机位A卷 - 密码解密
c++·算法·华为od
无限码力2 天前
华为OD技术面真题 - 计算机网络 - 1
计算机网络·华为od·华为od面试八股文·华为od面试真题
Tony_yitao2 天前
22.华为OD机试真题:数组拼接(Java实现,100分通关)
java·算法·华为od·algorithm
无限码力5 天前
华为OD机试真题 - 支持优先级队列 (C++ & Python & JAVA & JS & GO)
华为od·华为od机考·华为od机试真题·华为od机试·华为od机试双机位c卷·华为od上机考试
无限码力6 天前
华为OD技术面真题 - Python开发 -3
python·华为od·华为od技术面真题·华为od面试八股文·华为od面试python八股文·华为od技术面八股真题
无限码力9 天前
华为OD机试真题 - 求幸存数之和 (C++ & Python & JAVA & JS & GO)
华为od·华为od机考·华为od机试·华为od上机考试·华为od机考真题·华为od-求幸存数之和
无限码力10 天前
华为OD机试双机位C卷 - 结对编程 (C++ & Python & JAVA & JS & GO)
华为od·华为od机考·华为od机试·华为od机试双机位c卷·华为od机考双机位c卷·华为od上机考试·华为od机试-结对编程
无限码力13 天前
华为OD机试双机位C卷统一考试题库清单(持续收录中)以及考点说明
华为od·华为od机考·华为od机试·华为od机试双机位c卷·华为od机考双机位c卷·华为od双机位c卷·华为od上机考试 双机位c卷
无限码力14 天前
华为OD机试真题 - 没有回文串 (C++ & Python & JAVA & JS & GO)
华为od·华为od机试真题·华为od机试·od机考·华为od上机考试·华为od-没有回文串
无限码力16 天前
华为OD机考真题 -【测试用例执行计划】 (C++ & Python & JAVA & JS & GO)
华为od·华为od机考·华为od机试真题·华为od机试·华为od上机考试·华为od机考真题