华为OD机试真题(Python/JS/C/C++)
文章平均质量分 85
每一题都有详细的解题思路、详细的代码注释、测试用例,订阅后,专栏内的文章都可看,可加入华为OD刷题群(私信即可),发现新题目,随时更新。
余额抵扣
助学金抵扣
还需支付
¥49.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
哪 吒
2022博客之星Top1,现象级专栏 《Java基础教程系列》作者,专注Java硬核干货分享,立志做到Java赛道全网Top N
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
华为OD机试双机位C卷统一考试题库清单(持续收录中)以及考点说明(Python/JS/C/C++)
刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释发现新题目,随时更新。原创 2024-09-25 19:16:13 · 38136 阅读 · 18 评论
-
华为OD机试 - 最长的顺子 - 动态规划(Python/JS/C/C++ 双机位C卷 200分)
每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新,全天优快云在线答疑。原创 2024-09-01 11:09:53 · 2924 阅读 · 0 评论
-
华为OD机试 - 荒岛求生 - 栈Stack(Python/JS/C/C++ 双机位C卷 100分)
每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新,全天优快云在线答疑。原创 2024-09-01 11:01:32 · 2496 阅读 · 1 评论
-
华为OD机试 - 简易内存池(Python/JS/C/C++ 双机位C卷 200分)
每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新,全天优快云在线答疑。原创 2024-09-01 10:40:20 · 2864 阅读 · 0 评论
-
华为OD机试 - 绘图机器 - 双指针(Python/JS/C/C++ 双机位C卷 100分)
每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新,全天优快云在线答疑。原创 2024-09-01 11:05:15 · 1901 阅读 · 0 评论
-
华为OD机试 - 最佳信号覆盖问题 - 暴力枚举(Python/JS/C/C++ 双机位C卷 100分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。模拟AP安装,将AP的位置投影到二维坐标系中,给出每个AP的WIFI信号强度,信号强度会随着距离的增加而减弱。给定:第一行是2个整数N,D(N<=100,D<=100),其中N表示AP数量,D表示AP能够的信号能够覆盖的最大距离。接下来的N行里,原创 2025-12-30 16:04:29 · 309 阅读 · 0 评论 -
华为OD机试 - 最多等和不相交连续子序列 - 贪心策略(Python/JS/C/C++ 双机位C卷 100分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。给定一个数组,我们称其中连续的元素为连续子序列,称这些元素的和为连续子序列的和。数组中可能存在几个连续子序列,组内的连续子序列互不交叉且有相同的和。求一组连续子序列,组内子序列的数目最多。输出这个数目。第一行输入为数组长度 N,1 <= N <=原创 2025-12-28 10:01:18 · 684 阅读 · 0 评论 -
华为OD机试 - 矩形绘制 - 数组、坐标偏移(Python/JS/C/C++ 双机位C卷 100分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。实现一个简单的绘图模块,绘图模块仅支持矩形的绘制和擦除。当新绘制的矩形与已有图形重叠时,对图形取并集;当新擦除的矩形与已有图形重叠时,对图形取差集。给定一系列绘制和擦除操作,计算最终图形的面积。第一行为操作数N,接下来的N行格式为:d x1原创 2025-12-30 15:35:19 · 642 阅读 · 0 评论 -
华为OD机试 - 编程能力提升计划 - 二分查找(Python/JS/C/C++ 双机位C卷 100分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。为了提升软件编码能力,小王制定了刷题计划,他选了题库中的 n 道题,编号从 0 到 n-1,并计划在 m 天内按照题目编号顺序刷完所有的题目(注意,小王不能用多天完成同一题)。在小王刷题计划中,小王需要用 time[i] 的时间完成编号 i 的题原创 2025-12-28 10:12:19 · 498 阅读 · 0 评论 -
华为OD机试 - 矩阵扩散(Python/JS/C/C++ 双机位C卷 100分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。存在一个m x n的二维数组,其成员取值范围为0或1,其中值为1的成员具备扩散性,每经过1S,将上下左右值为0的成员同化为1,二维数组的成员初始值都为0,将第[i,j]和[k,l]两个个位置上元素修改成1后,求矩阵的所有元素变为1需要多长时间。输原创 2025-12-30 17:56:42 · 365 阅读 · 0 评论 -
华为OD机试 - 面试叫号系统 - 动态队列(Python/JS/C/C++ 双机位C卷 200分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。某公司举行招聘会,面试官通过叫号系统,按照应聘者的预约先后次序依次呼叫应聘者面试。如果被叫到的应聘者没有及时到场,面试官叫不到人就会过号处理。第一次过号的应聘者会被安排到下一位,第二次过号则会排队下两位,第三次过号则会被安排到下四位。以此类推,按原创 2025-12-28 09:47:56 · 549 阅读 · 0 评论 -
华为OD机试 - 挑选宝石 - 深度优先搜索dfs(Python/JS/C/C++ 双机位C卷 200分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。游乐园有一款互动游戏,游戏开始时会提供n个宝石,每个宝石都有一个属性值a1,a2…an.玩家在游戏前可以挑选x颗宝石,将这些宝石的属性值相乘组成玩家的属性值。游戏玩家需要y点属性值,请帮助游戏玩家计算有多少种计算方式第一行:三个整数n,x,y第原创 2025-12-30 09:54:16 · 742 阅读 · 0 评论 -
华为OD机试 - 陷阱方格/机器人走迷宫问题 - 动态规划(Python/JS/C/C++ 双机位C卷 200分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。房间由XY的方格组成,例如下图为6*4的大小。每一个方格以坐标(x, y)描述。机器人固定从方格(0, 0)出发,只能向东或者向北前进。出口固定为房间的最东北角,如下图的方格(5, 3)。用例保证机器人可以从入口走到出口。房间有些方格是墙壁,如(原创 2025-12-28 11:06:53 · 630 阅读 · 0 评论 -
华为OD机试 - 朋友圈个数 - 递归回溯(Python/JS/C/C++ 双机位C卷 200分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。给定一组朋友关系,统计一下该朋友关系网中的朋友圈个数。朋友圈的定义:一个朋友圈至少由3个朋友组成,且要求同一个朋友圈中的任意两个人都具有直接的朋友关系。输入一个朋友关系列表,如 Friends = A.B],[A.C],B,D], 其中的每一个原创 2025-12-30 16:26:06 · 502 阅读 · 0 评论 -
华为OD机试 - 文件存储系统的排序 - 深度优先搜索dfs(Python/JS/C/C++ 双机位C卷 200分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。在一个网络文件存储系统中,有众多的文件按照不同的文件夹进行分类存储。现在要对这些文件进行整理排序,以便更快速地查找特定文件。每个文件都有一个创建的时间戳(用整数标识,代表从特定时刻到文件创建时所经历的秒数),并且文件夹之间存在层级关系。现要求实现原创 2025-12-30 17:48:09 · 197 阅读 · 0 评论 -
华为OD机试 - 最图像坏点矫正 - 矩阵(Python/JS/C/C++ 双机位C卷 100分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。在图像处理中,坏点(异常值)会影响后续分析,需进行矫正。本题要求对3x3矩阵的中心元素进行坏点检测与矫正,规则如下1、坏点判断依据:计算中心元素(位置1,1)与周围8个元素的均值的差值绝对值 diff = |中心元素 - 周围均值|。2、矫正规则原创 2025-12-30 09:42:05 · 725 阅读 · 0 评论 -
华为OD机试 - 卡牌游戏 - 线性扫描(Python/JS/C/C++ 双机位C卷 100分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。小明正在尝试一种新的牌游戏。游戏规则如下:首先,小明拿到一张写有数字m的牌。然后,他会拿到另外n张牌,上面分别写有不同的数字,牌排成一排。小明的目标是从这排牌中找到一串连续的牌,这些牌上数字的总和可以被m整除。你的任务是判断小明是否可以完成这个目原创 2025-12-30 10:05:13 · 169 阅读 · 0 评论 -
华为OD机试 - 整理版本号 - 正则表达式(Python/JS/C/C++ 双机位C卷 100分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。产品选代开发期间,会规划多个版本。现在有一批字符串,需要过滤出来合法的版本号,并将其整理为规范格式。合法版本号:1.完整的版本号由"V"版本,“R”版本,“C”版本,“B”版本构成。每个维度的版本只能出现一次。例如:“V001R025C010B原创 2025-12-30 19:18:18 · 423 阅读 · 0 评论 -
华为OD机试 - 流量波峰 - 数组(Python/JS/C/C++ 双机位C卷 100分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。一线运维人员在对通话流量进行监控,每一段时间内都是出现流量的高峰,流量有高有低形成一个个波峰波谷,运维人员想找到流量变化最快的波峰,你可以帮助他吗?给定一个整数数组nums,代表采样点的流量值,请找到满足以下条件的三元组 (i,j,k): 其中i原创 2025-12-28 16:01:20 · 513 阅读 · 0 评论 -
华为OD机试 - 产品模块算法检验 - Tarjan算法(Python/JS/C/C++ 双机位C卷 200分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。在产品配置中,一个配置产品是由多个产品模块(CM)构成,每个CM有自身的算法,且模块间可能存在算法依赖。例如电脑产品是由主板、CPU、显卡等CM构成。CPU模块(CM1)算法依赖主板模块(CM2)算法,记作CM2<-CM1,算法引擎会通过算法依赖原创 2025-12-30 19:42:01 · 138 阅读 · 0 评论 -
华为OD机试 - 路口最短时间问题 - Dijkstra算法(Python/JS/C/C++ 双机位C卷 200分)
针对本题的街道网格模型,Dijkstra算法能够有效地处理交通灯的动态等待时间,并快速计算出从起点到终点的最短路径。这道题目可以抽象为一个带权图的最短路径问题,其中节点代表街道的交叉口,边的权重代表车辆从一个交叉口到另一个交叉口所需的时间。如果这条路径比之前记录的到达该邻接节点的路径更短,则更新该邻接节点的最短距离,并将其加入优先队列中。换句话说,Dijkstra算法能够计算从图中的某个起点(源节点)到图中所有其他节点的最短路径。从优先队列中取出距离最小的节点,将其标记为已访问,并更新它的邻接节点的距离。原创 2024-09-08 18:51:38 · 1121 阅读 · 0 评论 -
华为OD机试 - VLAN资源池 - 回溯、双指针(Python/JS/C/C++ 双机位C卷 100分)
定义一个VLAN ID的资源池(下称VLAN资源池),资源池中连续的VLAN用开始VLAN-结束VLAN表示,不连续的用单个整数表示,所有的VLAN用英文逗号连接起来。从输入VLAN资源池中移除申请的VLAN后字符串格式的VLAN资源池,输出要求满足题目描述中的格式,并且按照VLAN从小到大升序输出。现在有一个VLAN资源池,业务需要从资源池中申请一个VLAN,需要你输出从VLAN资源池中移除申请的VLAN后的资源池。如果申请的VLAN不在原VLAN资源池内,输出原VLAN资源池升序排序后的字符串即可。原创 2025-03-24 10:10:50 · 1392 阅读 · 1 评论 -
华为OD机试 - 整数编码(Python/JS/C/C++ 双机位C卷 100分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。实现一个整数编码方法,使得待编码的数字越小,编码后所占用的字节数越小。编码规则如下:输入的为一个字符串表示的非负整数。输出一个字符串表示整数编码的16进制码流。1277F127 的二进制为 1111111,编码时需补高位为0,最终字节为 0111原创 2025-03-04 12:30:24 · 635 阅读 · 0 评论 -
华为OD机试 - 最大矩阵和 - 卡德恩算法(动态规划)(Python/JS/C/C++ 双机位C卷 200分)
卡德恩算法的核心思想是使用动态规划,通过维护一个局部最优解来逐步构造全局最优解,在一维数组中找到和最大的连续子数组。原创 2024-09-17 18:57:26 · 1622 阅读 · 0 评论 -
华为OD机试 - N个选手比赛前三名、比赛(Python/JS/C/C++ 双机位C卷 100分)
第一行代表有4个评委,5个选手参加比赛 矩阵代表是4*5,每个数字是选手的编号,每一行代表一个评委对选手的打分排序, 2号选手得分36分排第1,1号选手36分排第2,5号选手30分(2号10分值有3个,1号10分值只有1个,所以2号排第一)第2到M+1行为半角逗号分割的整数数组,表示评委对每个选手的打分,0号下标数字表示1号选手分数,1号下标数字表示2号选手分数,依次类推。一个有N个选手参加的比赛,选手编号为1~N(3 <= N <= 100),有M(3 <= M <= 10)个评委对选手进行打分。原创 2024-09-22 13:56:07 · 1424 阅读 · 0 评论 -
华为OD机试 - 评委评分(Python/JS/C/C++ 双机位C卷 200分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。一个有N个选手参加比赛,选手编号为1~N(3<=N<=100),有M(3<=M<=10)个评委对选手进行打分。打分规则为每个评委对选手打分,最高分10分,最低分1分。请计算得分最多的3位选手的编号。如果得分相同,则得分高分值最多的选手排名靠前(原创 2025-10-27 14:37:42 · 617 阅读 · 0 评论 -
华为OD机试 - 异常的打卡记录(Python/JS/C/C++ 2025C卷 100分)
给定打卡记录的字符串数组clockRecord(每个打卡记录组成为:工号,时间(分钟),打卡距离(km),实际设备号,注册设备号),返回其中异常的打卡记录(按输入顺序输出)。为了正确地计算职工工资和监督工资基金使用情况,公司决定对员工的收集打卡记录进行异常排查。第二条打卡和第三条打卡,打卡时间小于60 且 打卡距离大于5,所以都是异常打卡。因此按顺序输出第二条打卡、第三条打卡、第六条打卡。之后的N行为打卡记录,每一行为一条打卡记录。按顺序输出异常的打卡记录,分号隔开。第一行输入为N,表示打卡记录数;原创 2025-04-28 13:20:46 · 1198 阅读 · 0 评论 -
华为OD机试 - 统计射击比赛成绩(Python/JS/C/C++ 双机位C卷 100分)
给定一个射击比赛成绩单,包含多个选手若干次射击的成绩分数,请对每个选手按其最高3个分数之和进行降序排名,输出降序排名后的选手ID序列。输入第一行,一个整数N,表示该场比赛总共进行了N次射击,产生N个成绩分数(2<=N<=100);输入第三行,一个长度为N整数序列,表示参与每次射击的选手对应的成绩(0<=成绩<=100)。输入第二行,一个长度为N整数序列,表示参与每次射击的选手ID(0<=ID<=99);选手20的分数:90,70 → 少于3个分数,忽略。选手1的分数:10,30,50 → 和为90。原创 2025-05-12 07:49:41 · 992 阅读 · 0 评论 -
华为OD机试 - 热点网站统计 - 逻辑分析(Python/JS/C/C++ 双机位C卷 100分)
每一行都是一个URL或一个数字,如果是URL,代表一段时间内的网页访问;企业路由器的统计页面,有一个功能需要动态统计公司访问最多的网页URLtopN。每行输入要对应一行输出,输出按访问次数排序的前N个URL,用逗号分隔。x.com, y.com, z.com 都被访问了3次。按字典序排序,x.com 和 y.com 排在前两位。Top2为:a.com, b.com。Top2为:x.com, y.com。a.com 被访问了3次。b.com 被访问了2次。c.com 被访问了1次。原创 2025-01-09 11:23:00 · 1698 阅读 · 0 评论 -
华为OD机试 - 恢复数字序列 - 贪心算法(Python/JS/C/C++ 双机位C卷 100分)
对于一个连续正整数组成的序列,可以将其拼接成一个字符串,再将字符串里的部分字符打乱顺序。通过猜测连续正整数的起始值,逐步构建可能的数字序列,并将生成的序列与输入的打乱字符串进行字符匹配,直到找到匹配的序列为止。现在给定一个按如上规则得到的并打乱字符串的字符串,请将其还原成原来的连续正整数序列,并输出序列中最小的数字。给定一个打乱顺序的字符串和正整数序列的长度,要求还原出原始的连续正整数组成的序列。从打乱的字符串中找出原来按顺序排列的数字序列,要求输出该序列中最小的数字。输出一个数字,为序列中最小的数字。原创 2024-09-18 07:37:44 · 925 阅读 · 0 评论 -
华为OD机试 - 流水线 - 逻辑分析(Python/JS/C/C++ 双机位C卷 100分)
一个工厂有 m 条流水线,来并行完成 n 个独立的作业,该工厂设置了一个调度系统,在安排作业时,总是优先执行处理时间最短的作业。当 n>m 时,首先处理时间短的 m 个作业进入流水线,其他的等待,当某个作业完成时,依次从剩余作业中取处理时间最短的进入处理。初始分配:流水线1=1, 流水线2=2, 流水线3=2。分配第3个作业1给流水线1,完成时间=1+1=2。分配第4个作业1给流水线2,完成时间=1+1=2。分配第4个作业3给流水线1,完成时间=1+3=4。初始分配:流水线1=1, 流水线2=1。原创 2025-05-10 07:51:35 · 1163 阅读 · 0 评论 -
华为OD机试 - 机器人活动区域(Python/JS/C/C++ 双机位C卷 200分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。现有一个机器人,可放置于 M × N的网格中任意位置,每个网格包含一个非负整数编号。当相邻网格的数字编号差值的绝对值小于等于 1 时,机器人可在网格间移动问题:求机器人可活动的最大范围对应的网格点数目。说明:1)网格左上角坐标为 (0, 0),右原创 2025-03-01 16:13:26 · 1207 阅读 · 0 评论 -
华为OD机试 - 小华地图寻宝 - 深度优先搜索DFS(Python/JS/C/C++ 双机位C卷 100分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。小华按照地图寻宝,地图上被划分成 m 行和 n 列的方格,横纵坐标范围是 [0, n-1] 和 [0, m-1]。在横坐标和纵坐标的数位之和不大于 k 的方格中存在黄金,每个格子中仅存在一克黄金,但横坐标和纵坐标位置之和大于 k 的方格存在危险不原创 2025-04-01 11:05:44 · 976 阅读 · 0 评论 -
华为OD机试 - 贪心的商人(Python/JS/C/C++ 双机位C卷 100分)
本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。商人经营一家店铺,有number种商品,由于仓库限制每件商品的最大持有数量是item[index],每种商品的价格在每天是,通过对商品的买进和卖出获取利润,请给出商人在days天内能获取到的最大利润。注:同一件商品可以反复买进和卖出;3 //输入原创 2025-03-26 09:14:52 · 1012 阅读 · 0 评论 -
华为OD机试 - 猜数字 - 暴力枚举(Python/JS/C/C++ 双机位C卷 100分)
刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、发现新题目,随时更新,全天优快云在线答疑。原创 2024-10-16 13:40:53 · 1457 阅读 · 0 评论 -
华为OD机试 - 查找单入口空闲区域 - 深度优先搜索(Python/JS/C/C++ 双机位C卷 100分)
因此,我们需要遍历矩阵,找到所有位于边界的 0,然后计算以这些 0 为入口的最大空闲区域的大小。给定一个 m x n 的矩阵,由若干字符 ‘X’ 和 ‘O’构成,’X’表示该处已被占据,’O’表示该处空闲,请找到最大的单入口空闲区域。若有多个符合要求,则输出区域大小最大的,若多个符合要求的单入口区域的区域大小相同,则此时只需要输出区域大小,不需要输出入口坐标。单入口空闲区域即有且只有一个位于边界的’O’作为入口的由连通的’O’组成的区域。空闲区域是由连通的’O’组成的区域,位于边界的’O’可以构成入口,原创 2025-02-15 00:15:15 · 884 阅读 · 0 评论 -
华为OD机试 - 打印机队列 - 优先队列(Python/JS/C/C++ 双机位C卷 200分)
这个问题要求模拟打印机的文件调度过程,关键在于正确处理每个打印机队列中的文件优先级和文件进入队列的顺序。优先级处理:每个文件有一个 1 到 10 的优先级,数字越大优先级越高,打印机应首先处理优先级最高的文件。在打印机 1 的队列中插入了 3 个文件,分别有不同的优先级,其中编号 3 的文件优先级最高,先被取出。因为打印的文件内容有轻重缓急之分,所以队列中的文件有1~10 不同的 优先级,其中数字越大优先级越高。在打印机 2 的队列中插入了 1 个文件,优先级为 1,因此它被首先取出。原创 2024-09-19 18:14:39 · 920 阅读 · 0 评论 -
华为OD机试 - 最左侧冗余覆盖子串 - 滑动窗口(Python/JS/C/C++ 双机位C卷 100分)
子串 “abbcc” 满足条件。子串 “abcd” 满足条件。最左侧的 s2 以长度 k 冗余覆盖 s1 的子串的首个元素下标,若不存在,则返回-1。s1和s2都只包含小写字母。原创 2025-02-07 10:20:14 · 968 阅读 · 0 评论 -
华为OD机试 - 比赛的冠亚季军(Python/JS/C/C++ 双机位C卷 100分)
有个运动员,他们的id为0到N-1,他们的实力由一组整数表示。他们之间进行比赛,需要决出冠亚军。比赛的规则是0号和1号比赛,2号和3号比赛,以此类推,每一轮,相邻的运动员进行比赛,获N (3\leq N< 10000)胜的进入下一轮,实力值大的获胜,实力值相等的情况,id小的情况下获胜,轮空的直接进入下一轮。(0 <= 实力值 <= 10000000000)。输入一行N个数字代表N的运动员的实力值。输出冠亚季军的id,用空格隔开。原创 2025-02-07 10:19:56 · 1352 阅读 · 2 评论 -
华为OD机试 - 贪吃的猴子 - 滑动窗口(Python/JS/C/C++ 双机位C卷 100分)
在计算获取香蕉的过程中,我们模拟了一个滑动窗口,依次枚举从左边取i个香蕉时,还可以从右边取N-i个香蕉的总和。虽然直接用贪心做这道题可能比较复杂,因为每次的最优选择可能会影响后续的选择,但我们可以通过枚举所有可能的操作顺序(取若干次头部香蕉和若干次尾部香蕉),从中找到最终的最优解。我们可以从左边和右边分别取香蕉,尝试所有可能的组合(例如:从左边取1次,从右边取3次),然后计算不同组合下获取的香蕉总数。枚举所有可能取法,从左边取不同数量的香蕉,配合从右边取剩余的香蕉,计算出所有组合的香蕉总数。原创 2024-09-24 08:35:32 · 1188 阅读 · 0 评论
分享