深度解析华为OD机试:任务总执行时长问题及其C++实现
在华为OD机试中,任务调度类题目是常见的考察点之一。在实际生产环境中,任务调度器需要根据任务类型和执行时长来合理安排任务执行顺序,从而最大化资源的利用效率。本文将围绕华为OD机试中一道关于“任务总执行时长”的题目展开,详细讲解其解题思路,并提供完整的C++代码实现。文章将逐步深入讲解每一行代码,并分析不同场景下的解法,确保读者全面理解。
题目描述
在这个问题中,我们面对一个任务编排服务场景,任务分为两种类型:
- 第一种任务的执行时长为
taskA
。 - 第二种任务的执行时长为
taskB
。
服务每次会编排指定数量的任务(num
),任务一旦开始执行不能被打断,且任务是可以连续执行的。你的任务是生成每次编排任务后所有可能的总执行时长,并按照从小到大的顺序输出结果。
输入描述
输入由一行字符串组成,包含三个整数:
- 第一种任务执行时长
taskA
。 - 第二种任务执行时长
taskB
。 - 需要编排的任务总个数