ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

华为OD机试真题精讲:执行时长(Python/Java/C++多语言实现)

华为OD机试真题精讲:执行时长(Python/Java/C++多语言实现)

华为OD机试真题精讲:执行时长(Python/Java/C++多语言实现)

一、题目描述(2025B卷高频100分题)

在分布式系统中,需要计算一批任务的总执行时长,规则如下:

  1. 输入为:
    • 任务列表tasks,每个元素为[start_time, duration, parallelism](开始时间、执行耗时、并行度,均为非负整数);
    • 并行度parallelism表示该任务可同时执行的最大实例数(1 ≤ parallelism ≤ 100);
    • 所有任务的开始时间start_time表示任务可被调度的最早时间;
  2. 调度规则:
    • 任务需按开始时间升序调度(开始时间相同则按输入顺序);
    • 同一任务的多个实例,受限于并行度,超出并行度的实例需等待前序实例完成后再执行;
    • 任务实例的执行不可中断,一旦开始必须执行至结束;
  3. 输出:所有任务全部执行完成的总时长(即从时间0到最后一个任务实例结束的时间差)。

关键约束

  • 任务数量 1 ≤ n ≤ 1000;
  • 开始时间 0 ≤ start_time
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进