华为OD机试 - 任务最优调度 - 深度优先搜索dfs算法(Python/JS/C/C++ 双机位A卷 200分)

一、题目描述

给定一个正整数数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。

请计算执行完所有任务所需的最短时间。

任务执行规则如下

  1. 任务可以按任意顺序执行,且每个任务执行耗时间均为1个时间单位;
  2. 两个同类型的任务之间必须有长度为N个单位的冷却时间,比如N为2时,在时间K执行了类型3的任务,那么K+1和K+2两个时间不能执行类型3任务;
  3. 系统在任何一个单位时间内都可以执行一个任务,或者等待状态。

说明:数组最大长度为1000,速度最大值1000。

二、输入描述

第一行记录一个用半角逗号分隔的数组,数组长度不超过1000,数组元素的值不超过1000。第二行记录任务冷却时间,N为正整数,N<=100。

三、输出描述

输出为执行完所有任务所需的最短时间。

四、测试用例

测试用例1

1、输入

2,2,2,3
2

2、输出

7

3、说明

  1. 时间1:执行任务2
  2. 时间2:执行任务3,因为冷却时间为2,所以时间2不能执行任务2
  3. 时间3:系统等待,因为冷却时间为
华为OD机试 - 任务最优调度(Python) 如果遍历到的tasks[i]的冷却时间为0,则将其数量--,即task[i][1]--,同时total--,另外该任务的冷却时间要变为第二行输入的wait时间,即task[i][2] = wait。如果遍历到的task[i]的冷却时间不为0或者本轮已经有任务被执行了,则仅冷却时间--,即task[i][2]--,注意如果冷却时间已经为0,则放弃--。tasks = [[2,3,0], [3,2,0], [4,2,0]] // [任务类型,数量,冷却时间]total-- // 总任务数-- 阅读详情

相关推荐

华为OD机试题目详解:任务最优调度问题及基于Python、Java、JavaScript、C++的多语言实现

在这篇文章中,我们详细解析了华为OD机试中的任务最优调度问题,并提供了Python、Java、JavaScript、C++四种语言的代码实现。通过分析,我们可以总结出任务调度问题的核心思路,即通过合理安排任务的执行顺序,遵守冷却时间的限制,从而最小化任务执行所需的时间。希望通过本文的讲解,大家能够更好地掌握此类问题的解题技巧,并熟悉在不同编程语言中的实现方式。

m0_57781768的博客 493

华为OD机试E卷 - 任务最优调度(Java & Python& JS & C++ & C )

给定一个正整数数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。请计算执行完所有任务所需的最短时间。说明:数组最大长度为1000,速度最大值1000。

算法大师! 966

华为OD机试 - 最优调度策略(Python) | 机试题+算法思路+考点+代码解析 【2023】

在通信系统中有一个常见的问题是对用户进行不同策略的调度会得到不同系统消耗的性能假设由N个待串行用户,每个用户可以使用A/B/C三种不同的调度策略不同的策略会消耗不同的系统资源请你根据如下规则进行用户调度并返回总的消耗资源数规则是:相邻的用户不能使用相同的调度策略例如:第一个用户使用 A 策略 则第二个用户只能使用 B 和 C 策略对单的用户而言,不同的调度策略对系统资源的消耗可以规划后抽象为数值例如某用户分别使用ABC策略的系统消耗,分别为15 8 17。

坚果的博客 1036

2026华为OD机考新系统真题 + 双机位C卷 + 往年真题 - 题库目录分值说明 + 考点说明+在线OJ

2026年4月1日起,华为OD机试正式切换至新系统模式!采用力扣模式,无需自己写输入! 难度大幅度降低。正在备考华为OD机试的同学,优先刷新系统机试真题,可大幅提升通过率。 新系统考题考点与旧版一致,无需重新适应。本专栏所有算法题均配有详细思路解析,并提供C语言、JS、C++、Python、Go、Java多语言源码实现。订阅后私信即可开通专属OJ刷题权限,高效备考一次上岸!

算法大师! 45万+

华为OD机试 新系统 双机位C卷 往年真题 机考题库(持续收录中)以及算法考点详解(Python/JS/C/C++)

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释发现新题目,随时更新。

学Java,找哪吒 5万+

华为OD机试 新系统 双机位C卷 往年真题 机考题库(持续收录中)以及算法考点详解

每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天优快云在线答疑。

学Java,找哪吒 7万+

【华为OD机试】任务最优调度(python, java, c++, js)

给定一个正整数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。请计算执行完所有任务所需的最短时间。

A_D_I_D_A_S的博客 401

任务最优调度

已支持(Java & JS & Python & C & C++),考察:贪心思维

优快云 4970

【华为OD机试真题 C++】任务最优调度

给定一个正整数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。请计算执行完所有任务所需的最短时间。 任务执行规则如下: 1、任务可以按任意顺序执行,且每个任务执行耗时间均为1个时间单位。 2、两个同类型的任务之间必须有长度为N个单位的冷却时间,比如N为2时,在时间K执行了类型3的任务,那么K+1和K+2两个时间不能执行类型3任务。 3、系统在任何一个单位时间内都可以执行一个任务,或者等待状态。说明:数组最大长度为1000,速度最大值1000。

steven_my的博客 376

【华为OD机试真题 Python】任务最优调度

2、两个同类型的任务之间必须有长度为N个单位的冷却时间,比如N为2时,在时间K执行了类型3的任务,那么K+1和K+2两个时间不能执行类型3任务。第一行记录一个用半角逗号分隔的数组,数组长度不超过1000,数组元素的值不超过1000第二行记录任务冷却时间,N为正整数,N

A_D_I_D_A_S的博客 1193

【华为OD-E卷 - 112 任务最优调度 100分(python、java、c++、js、c)】

如果最频繁的任务的出现次数为 max_freq,那么这类任务之间的间隔时间为 (max_freq - 1) * (cool_down + 1),其中 (max_freq - 1) 是其他任务间隔的数量,cool_down + 1 是任务间隔时间(冷却时间加上任务本身的执行时间)。如果最频繁任务的出现次数是 maxFreq,那么这些任务之间至少需要 (maxFreq - 1) * (coolDown + 1) 的时间。这样可以方便地找出任务中出现次数最多的任务,以及有多少个任务的频次相同。

CodeClimb的博客 1502

【2025年华为OD机试】(E卷,200分) - 任务最优调度 (JavaScript&Java & Python&C/C++)

核心逻辑按任务数量排序,优先执行数量多的任务。使用循环模拟时间单位,执行任务并更新冷却时间。关键点任务数量的统计和排序。冷却时间的更新和任务执行的调度。注意事项确保每个时间单位只执行一个任务。处理冷却时间的更新和任务执行的顺序。华为OD(Outsourcing Developer,外包开发工程师)是华为针对软件开发工程师岗位的一种招聘形式,主要包括笔试、技术面试以及综合面试等环节。尤其在笔试部分,算法题的机试至关重要。

嵌入式技术开发 808

【双机位A卷】华为OD笔试之【贪心】双机位A-任务最优调度【Py/Java/C++/C/JS/Go六种语言】【欧弟算法】全网注释最详细分类最全的华子OD真题题解

可上练习华子OD、大厂真题绿色聊天软件戳od1441了解算法冲刺训练(备注【优快云】否则不通过)

weixin_48157259的博客 1104

任务最优调度 思路+代码(华为OD-C卷-200分-Python解法)

给定一个正整数数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。给定一个正整数数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。给定一个正整数数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。给定一个正整数数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。给定一个正整数数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。

希望我的博客,能帮上你解决学习中工作中所遇到的问题 673

【华为OD机试真题 Java】任务最优调度

给定一个正整数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。请计算执行完所有任务所需的最短时间。 任务执行规则如下: 1、任务可以按任意顺序执行,且每个任务执行耗时间均为1个时间单位。 2、两个同类型的任务之间必须有长度为N个单位的冷却时间,比如N为2时,在时间K执行了类型3的任务,那么K+1和K+2两个时间不能执行类型3任务。 3、系统在任何一个单位时间内都可以执行一个任务,或者等待状态。说明:数组最大长度为1000,速度最大值1000。

qq_40642440的博客 574

华为OD机试 - 任务最优调度 - 深度优先搜索dfs算法(Java 双机位A卷 200分)

第一行记录一个用半角逗号分隔的数组,数组长度不超过1000,数组元素的值不超过1000。第二行记录任务冷却时间,N为正整数,N

学Java,找哪吒 1612

华为OD机试真题-任务最优调度-2023年OD统一考试(B卷)

给定一个正整型数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。2、两个同类型的任务之间必须有长度为N个单位的冷却时间,比如:N为2时,在时间K执行了类型3的任务,那么K+1和K+2两个时间不能执行类型3任务。时间2:执行类型3的任务(因为冷却时间为2,所以时间2不能执行类型2的任务)。1、任务可以按任意顺序执行,且每个任务执行耗时间均为1个时间单位。时间3:系统等待(仍然在类型2的冷却时间)。时间1:执行类型2任务。时间4:执行类型2任务。时间7:执行类型2任务。

YOLO 279

【TCAX相关】Python 官方手册下载页面(中文+英文)

Python 官方手册下载页面(中文+英文) 中文: https://docs.python.org/zh-cn/3.8/archives/ https://docs.python.org/zh-cn/3.6/archives/ 英文: https://www.python.org/doc/versions/ https://docs.python.org/3/archives/ https://www.python.org/ftp/python/doc/ ...

Seekladoom的博客 1011

scGPT学习资料汇总 - 单细胞多组学基础模型

scGPT(single-cell Generative Pre-trained Transformer)是一个针对单细胞多组学数据的基础模型,由多伦多大学Wang Bo实验室开发。该模型通过在超过3300万个细胞上进行生成式预训练,捕捉了基因和细胞之间的复杂关系,为多种下游任务提供了强大的基础。scGPT为单细胞分析提供了强大的基础模型和丰富的资源。通过本文汇总的学习材料,读者可以快速掌握scGPT的使用,并将其应用到自己的研究中。

2401_87189860的博客 838

飞塔防火墙和paloalto防火墙构建ipsec

一、配置fortigate防火墙1.防火墙配置上网功能1.1配置fortigate的wan1接口IP为100.100.100.2/24VLAN交换internal,IP地址为192.168.156.99/24。开启DHCP分配IP地址范围为192.168.156.110-192.168.156.2101.2配置访问互联网的缺省路由1.3配置访问互联网的安全策略2.配置与Paloalto防火墙的IPSECVPN。

weixin_44675999的博客 3738

SAP S/4 HANA CO 成本模块实战指南

摘要:SAP S/4HANA CO(管理会计)模块是企业内部成本管理的核心工具。本文系统介绍了CO模块的组织结构(控制范围与会计科目表映射)、基础概念(计划值与预算值)以及6大子模块功能(成本要素、成本中心会计等)。重点解析了各子模块的应用场景与差异,包括成本归集、费用分摊、利润分析和产品成本控制,并对比了利润中心与成本中心、内部订单与销售订单的区别。通过事务代码示例和功能对比表,帮助用户快速掌握SAP CO模块的核心管理逻辑与实施要点。

金牌架构师 1125

DeepSeek掘金——用DeepSeek模型构建AI 代理

在本综合指南中,我们将探讨如何利用 DeepSeek 的功能构建能够以有意义的方式理解、推理和交互的复杂 AI 代理。人工智能领域正在迅速发展,DeepSeek 的模型代表了智能 AI 代理开发的重大进步。在本综合指南中,我们将探讨如何利用 DeepSeek 的功能构建能够以有意义的方式理解、推理和交互的复杂 AI 代理。

3857

PCL RANSAC拟合直线并插值

空间直线线性插值的原理与实现方法。

点云侠的博客 136

2026 年 3 月青少年软编等考 C/C++ 三级测试题解析

摘要 本文包含三部分内容: 单选题(10题):考察C++基础语法和数据结构知识,涉及vector、栈、队列的操作和特性。 判断题(10题):测试对动态数组、栈、队列、字符串操作的理解,包括内存管理、访问方式和函数返回值等。 编程题(1题):模拟火车站售票窗口排队场景,要求根据输入输出各窗口的排队情况,重点考查队列的实际应用和边界条件处理。 答案解析详细,涵盖常见编程考点,适合检验基础知识的掌握程度。

发布少儿编程考级的真题和优秀竞赛题解析,以及一些讲义。 250

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

上一篇: 华为OD机试 - 九宫格按键输入 - 逻辑分析(Python/JS/C/C++ 2025 B卷 200分)
下一篇: 华为OD机试 - 书籍叠放 - 逻辑分析(Python/JS/C/C++ 2025 A卷 200分)
哪 吒
哪 吒 2022年度博客之星TOP 1 2022年度博客之星TOP 1 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄9年 59万+粉丝 2933原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哪 吒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值