![](https://img-blog.csdnimg.cn/direct/96489e1611954c0ba5c682f1f23d6601.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
华为OD机试题库(C++/Java/Python)
文章平均质量分 71
2024年华为OD机考完整题库,已帮助1000+候选人顺利通过机试。JAVA、Python、C++等多种语言实现,请勿完整复制代码,避免查重。(发现新题目,随时更新)
2024剑指offer
博主10+年互联网大厂经验,精通多种编程语言,乐于分享面试经验。
展开
-
2024华为OD机试真题-小朋友来自多少小区-(C++/Java/Python)-C卷D卷-100分
幼儿园组织活动,老师布置了一个任务:每个小朋友去了解与自己同一个小区的小朋友还有几个。我们将这些数量汇总到数组 garden 中。请根据这些小朋友给出的信息,计算班级小朋友至少来自几个小区?原创 2024-04-30 20:59:17 · 704 阅读 · 4 评论 -
2024华为OD机试最新E卷题库-(C卷+D卷+E卷)-(JAVA、Python、C++)
2023年11月以后,考的都是C卷,题库已经准备好,欢迎大家交流学习。据考过D卷的同学反馈,D卷和C卷是相同的题目。如果发现新题,会及时更新。祝大家考试顺利!原创 2024-04-29 23:18:05 · 5289 阅读 · 3 评论 -
2024华为OD机试题库-(A卷+B卷+C卷+D卷+E)-(JAVA、Python、C++)
博主是一名资深后端开发人员,精通C++,Python,Java,乐于分享面试经验,已帮助千余名同学通过OD机考!这些题目博主每一道都刷了至少两遍,每一行代码都蕴含了博主从业以来所积累的所有经验和技巧,可谓干货满满!原创 2023-03-28 00:28:55 · 44547 阅读 · 61 评论 -
华为OD机试-2023真题-考点分类
从2022年11月以后,OD机试换了新题库,新题库考察的算法比较偏,题目难度加大。了解到部分同学的一些需求,博主根据考点对题目进行了分类,如果时间紧迫,可以针对特定题型优先选择一两道进行练习。原创 2023-03-31 00:47:46 · 6783 阅读 · 3 评论 -
【华为OD机试c++/java/python 真题2023 Q1】
最后收集了华为OD机试前线最新战况,快来看看刚考完的小伙伴们都考到了哪些题目吧!是不是有点迫不及待了?对于这些别人考过的真题一定要掌握熟练,说不定你也会考到哦!原创 2023-02-09 23:43:39 · 7763 阅读 · 12 评论 -
2024华为OD机试真题- 亲子游戏-(C++/Java/Python)-C卷D卷-200分
宝宝和妈妈参加亲子游戏,在一个二维矩阵(N*N)的格子地图上,宝宝和妈妈抽签决定各自的位置,地图上每个格子有不同的糖果数量,部分格子有障碍物。游戏规则是妈妈必须在最短的时间(每个单位时间只能走一步)到达宝宝的位置,路上的所有糖果都可以拿走,不能走障碍物的格子,只能上下左右走。原创 2024-07-24 17:31:47 · 5374 阅读 · 0 评论 -
2024华为OD机试真题-可以处理的最大任务数-(C++/Python/Java)-C卷D卷-200分
在某个项目中有多个任务(用task数组表示)需要你进行处理,其中:task[i] = [si, ei]你可以在 si ≤ day ≤ ei 中的任意一天处理该任务,请返回你可以处理的最大任务数。原创 2024-07-22 21:27:03 · 157 阅读 · 0 评论 -
2024华为OD机试真题-跳格子3-(C++/Python/Java)-C卷D卷-200分
小明和朋友们一起玩跳格子游戏,每个格子上有特定的分数 score= [1, -1, -6, 7, -17, 7],从起点score[0]开始,每次最大的步长为k,请你返回小明跳到终点 score[n-1] 时,能得到的最大得分。原创 2024-07-22 11:15:00 · 666 阅读 · 0 评论 -
2024华为OD机试真题-寻找最优的路测线路-(C++/Java/Python)-C卷D卷-200分
评估一个网络的信号质量,其中一个做法是将网络划分为栅格,然后对每个栅格的信号质量计算。路测的时候,希望选择一条信号最好的路线(彼此相连的栅格集合)进行演示。现给出 R 行 C 列的整数数组 Cov,每个单元格的数值 S 即为该栅格的信号质量(已归一化,无单位,值越大信号越好)。原创 2024-06-02 01:26:35 · 323 阅读 · 0 评论 -
2024华为OD机试真题-反射计数-C卷D卷-100分-(C++/Java/Python)
给定一个包含 0 和 1 的二维矩阵。给定一个初始位置和速度,一个物体从给定的初始位置出发,在给定的速度下进行移动,遇到矩阵的边缘则发生镜面发射。无论物体经过 0 还是 1,都不影响其速度。请计算并给出经过 t 时间单位后,物体经过 1 点的次数。原创 2024-05-28 21:40:54 · 673 阅读 · 0 评论 -
2024华为OD机试真题-运输时间(C++/Java/Python)-C卷D卷-200分
M(1 ≤ M ≤ 20)辆车需要在一条不能超车的单行道到达终点,起点到终点的距离为 N(1 ≤ N≤ 400)。速度快的车追上前车后,只能以前车的速度继续行驶,求最后一辆车到达目的地花费的时间。注:每辆车固定间隔 1 小时出发,比如第一辆车 0 时出发,第二辆车 1 时出发,依次类推原创 2024-05-27 20:55:16 · 3128 阅读 · 0 评论 -
【2024华为OD机试真题-C卷D卷-200分】二叉树的广度优先遍历(C++/Java/Python)
有一棵二叉树,每个节点由一个大写字母标识(最多26个节点)。现有两组字母,分别表示后序遍历(左孩子->右孩子->父节点)和中序遍历(左孩子->父节点->右孩子)的结果,请你输出层序遍历的结果。每个输入文件一行,第一个字符串表示后序遍历结果,第二个字符串表示中序遍历结果。(每串只包含大写字母)原创 2024-05-26 00:28:10 · 223 阅读 · 0 评论 -
【华为OD机试-C卷D卷-200分】查找一个有向网络的头节点和尾节点(C++/Java/Python)
给定一个有向图,图中可能包含有环,图使用二维矩阵表示,每一行的第一列表示起始节点,第二列表示终止节点,如 [0, 1] 表示从 0 到 1 的路径。每个节点用正整数表示。求这个数据的首节点与尾节点,题目给的用例会是一个首节点,但可能存在多个尾节点。同时图中可能含有环。如果图中含有环,返回 [-1]。原创 2024-05-25 19:48:12 · 231 阅读 · 0 评论 -
【华为OD机试-C卷D卷-200分】最长连续手牌(C++/Java/Python)
有这么一款单人卡牌游戏,牌面由颜色和数字组成,颜色为红、黄、蓝、绿中的一种,数字为0-9中的一个。游戏开始时玩家从手牌中选取一张卡牌打出,接下来如果玩家手中有和他上一次打出的手牌颜色或者数字相同的手牌,他可以继续将该手牌打出,直至手牌打光或者没有符合条件可以继续打出的手牌。原创 2024-05-25 01:17:33 · 409 阅读 · 0 评论 -
【2024华为OD机试真题-C卷D卷-200分】文本统计分析(C++/Java/Python)
有一个文件,包含以一定规则写作的文本,请统计文件中包含的文本数量。规则如下:文本以 ";"分隔,最后一条可以没有 ";" ,但空文本不能算语句,比如COMMAND A; ;只能算一条语句。注意,无字符/空白字符/制表符都算作"空"文本;原创 2024-05-24 01:05:01 · 164 阅读 · 0 评论 -
2024华为OD机试真题-贪心歌手(C++/Java/Python)-C卷D卷-200分
一个歌手准备从A城去B城参加演出。按照合同,他必须在 T 天内赶到歌手途经N 座城市歌手不能往回走每两座城市之间需要的天数都可以提前获知。歌手在每座城市都可以在路边卖唱赚钱。经过调研,歌手提前获知了每座城市卖唱的收入预期:如果在一座城市第一天卖唱可以赚M,后续每天的收入会减少D(第二天赚的钱是 M - D,第三天是 M - 2D ...)。如果收入减少到 0 就不会再少了。原创 2024-05-23 01:24:42 · 535 阅读 · 0 评论 -
2024华为OD机试真题-启动多任务排序(C++/Java/Python)-C卷D卷-200分
一个应用启动时,会有多个初始化任务需要执行,并且任务之间有依赖关系,例如A任务依赖B任务,那么必须在B任务执行完成之后,才能开始执行A任务。现在给出多条任务依赖关系的规则,请输入任务的顺序执行序列,规则采用贪婪策略,即一个任务如果没有依赖的任务,则立刻开始执行,如果同时有多个任务要执行,则根据任务名称字母顺序排序。原创 2024-05-22 21:00:03 · 153 阅读 · 0 评论 -
【2024华为OD机试真题-C卷D卷-200分】图像物体的边界(C++/Java/Python)
给定一个二维数组M行N列,二维数组里的数字代表图片的像素,为了简化问题,仅包含像素1和5两种像素,每种像素代表一个物体,2个物体相邻的格子为边界,求像素1代表的物体的边界个数。像素1代表的物体的边界指与像素5相邻的像素1的格子,边界相邻的属于同一个边界,相邻需要考虑8个方向(上,下,左,右,左上,左下,右上,右下)。原创 2024-05-22 11:44:46 · 230 阅读 · 0 评论 -
2024华为OD机试真题-伐木工(C++/Java/Python)-C卷D卷-200分
一根X米长的树木,伐木工切割成不同长度的木材后进行交易,交易价格为每根木头长度的乘积。规定切割后的每根木头长度都为正整数;也可以不切割,直接拿整根树木进行交易。请问伐木工如何尽量少的切割,才能使收益最大化?原创 2024-05-19 01:17:46 · 461 阅读 · 0 评论 -
【2024华为OD机试真题-C卷D卷-200分】Wonderland(C++/Java/Python)
Wonderland是小王居住地一家很受欢迎的游乐园。Wonderland目前有4种售票方式,分别为一日票(1天)、三日票(3天)、周票(7天)和月票(30天)。每种售票方式的价格由一个数组给出,每种票据在票面时限内可以无限制地进行游玩。例如:小王在第10日买了一张三日票,小王可以在第10日、第11日和第12日进行无限制地游玩。原创 2024-05-18 01:13:15 · 976 阅读 · 0 评论 -
2024华为OD机试真题-可以组成网络的服务器(C++/Java/Python)-C卷D卷-200分
在一个机房中,服务器的位置标识在 n*m 的整数矩阵网格中,1 表示单元格上有服务器,0 表示没有。如果两台服务器位于同一行或者同一列中紧邻的位置,则认为它们之间可以组成一个局域网。请你统计机房中最大的局域网包含的服务器个数。原创 2024-05-17 21:36:09 · 157 阅读 · 0 评论 -
2024华为OD机试真题-找单词-(C++/Java/Python)-C卷D卷-200分
给一个字符串和一个二维字符数组,如果该字符串存在于该数组中,则按字符串的字符顺序输出字符串每个字符所在单元格的位置下标字符串,如果找不到返回字符串“N”。1.需要按照字符串的字符组成顺序搜索,且搜索到的位置必须是相邻单元格,其中“相邻单元格”是指那些水平相邻或垂直相邻的单元格。原创 2024-05-17 01:23:55 · 201 阅读 · 0 评论 -
2024华为OD机试真题-田忌赛马(C++/Java/Python)-C卷D卷-200分
给定两个只包含数字的数组a,b,调整数组 a 里面的数字的顺序,使得尽可能多的a[i] > b[i]。数组a和b中的数字各不相同。输出所有可以达到最优结果的a数组的结果。入描述输入的第一行是数组 a 中的数字,其中只包含数字,每两个数字之间相隔一个空格,a数组大小不超过10。原创 2024-05-15 20:21:48 · 403 阅读 · 1 评论 -
【2024华为OD机试真题-C卷D卷-200分】数字排列(C++/Java/Python)
小明负责公司年会,想出一个趣味游戏:屏幕给出 1 ~ 9 中任意 4 个不重复的数字,大家以最快时间给出这几个数字可拼成的数字从小到大排列位于第N 位置的数字,其中 N 为给出数字中最大的(如果不到这么多数字则给出最后一个即可)。原创 2024-05-15 02:09:48 · 199 阅读 · 0 评论 -
【华为OD机试-C卷D卷-200分】 简易内存池【C++/Java/Python】
请实现一个简易内存池,根据请求命令完成内存分配和释放。内存池支持两种操作命令,REQUEST和RELEASE,其格式为:REQUEST=请求的内存大小 表示请求分配指定大小内存,如果分配成功,返回分配到的内存首地址;如果内存不足,或指定的大小为0,则输出error。RELEASE=释放的内存首地址 表示释放掉之前分配的内存,释放成功无需输出,如果释放不存在的首地址则输出error。原创 2024-05-14 02:12:19 · 275 阅读 · 1 评论 -
【华为OD机试C卷D卷】文件缓存系统(C++/Java/Python)
存储文件是把文件放入文件缓存系统中;读取文件是从文件缓存系统中访问已存在,如果文件不存在,则不作任何操作。当缓存空间不足以存放新的文件时,根据规则删除文件,直到剩余空间满足新的文件大小位置,再存放新文件。原创 2024-05-04 15:35:37 · 204 阅读 · 0 评论 -
2024华为OD机试真题-根据IP查找城市-(C++/Java/Python)-C卷D卷-200分
某业务需要根据终端的IP地址获取该终端归属的城市,可以根据公开的IP地址池信息查询归属城市。地址池格式如下:城市名=起始IP,结束IP起始和结束地址按照英文逗号分隔,多个地址段采用英文分号分隔。比如:原创 2024-05-04 15:25:32 · 157 阅读 · 0 评论 -
2024华为OD机试真题-符号运算-(C++/Java/Python)-C卷D卷-200分
给定一个表达式,求其分数计算结果。表达式的限制如下:所有的输入数字皆为正整数(包括0)仅支持四则运算(+-*,/)和括号结果为整数或分数,分数必须化为最简格式(比如6,3/4,7/8,90/7)除数可能为0,如果遇到这种情况,直接输出"ERROR"原创 2024-05-04 15:11:16 · 270 阅读 · 0 评论 -
2024华为OD机试真题-中文分词模拟器-(C++/Java/Python)-C卷D卷-200分
给定一个连续不包含空格的字符串,该字符串仅包含英文小写字母及英文标点符号(逗号、分号、句号),同时给定词库,对该字符串进行精确分词。说明:精确分词:字符串分词后,不会出现重叠。即"ilovechina",不同词库可分割为"i,love,china","ilove,china",不能分割出现重叠的"i,ilove,china",i 出现重叠标点符号不成词,仅用于断句原创 2024-05-04 15:00:44 · 638 阅读 · 0 评论 -
2024华为OD机试真题-找数字-(C++/Java/Python)-C卷D卷-200分
小扇和小船今天又玩起来了数字游戏,小船给小扇一个正整数 n(1 ≤ n ≤ 1e9),小扇需要找到一个比 n 大的数字 m,使得 m 和 n 对应的二进制中 1 的个数要相同,如:4对应二进制1008对应二进制1000其中1的个数都为1个现在求 m 的最小值。原创 2024-05-04 14:23:03 · 345 阅读 · 0 评论 -
【2024华为OD机试真题-C卷D卷-100分】数据单元的变化替换(C++/Java/Python)
将一个 csv 格式的数据文件中包含有单元格引用的内容替换为对应单元格内容的实际值。comma separated values(CSV) 逗号分隔值,csv 格式的数据文件使用逗号 "," 作为分隔符将各单元的内容进行分隔。原创 2024-05-04 14:07:45 · 571 阅读 · 0 评论 -
2024华为OD机试真题-结对编程-(C++/Java/Python)-C卷D卷-200分
某部门计划通过结队编程来进行项目开发,已知该部门有 N 名员工,每个员工有独一无二的职级,每三个员工形成一个小组进行结队编程,结队分组规则如下:从部门中选出序号分别为 i、j、k 的3名员工,他们的职级分别为原创 2024-05-04 01:58:40 · 62 阅读 · 0 评论 -
2024华为OD机试真题-部门人力分配(C++/Java/Python)-C卷D卷-200分
部门在进行需求开发时需要进行人力安排。当前部门需要完成 N 个需求,需求用 requirements表述,requirements[i] 表示第 i 个需求的工作量大小,单位:人月。这部分需求需要在 M 个月内完成开发,进行人力安排后每个月人力时固定的。目前要求每个月最多有2个需求开发,并且每个月需要完成的需求不能超过部门人力。原创 2024-05-03 16:23:23 · 324 阅读 · 0 评论 -
2024华为OD机试真题-攀登者2-(C++/Java/Python)-C卷D卷-200分
攀登者喜欢寻找各种地图,并且尝试攀登到最高的山峰。地图表示为一维数组,数组的索引代表水平位置,数组的元素代表相对海拔高度。其中数组元素0代表地面。例如:[0,1,2,4,3,1,0,0,1,2,3,1,2,1,0],代表如下图所示的地图,地图中有两个山脉位置分别为 1,2,3,4,5 和 8,9,10,11,12,13,最高峰高度分别为 4,3。最高峰位置分别为3,10。原创 2024-05-02 16:02:36 · 208 阅读 · 0 评论 -
2024华为OD机试真题-数组连续和-(C++/Java/Python)-C卷D卷-100分
给定一个含有N个正整数的数组, 求出有多少个连续区间(包括单个正整数), 它们的和大于等于x。输入描述第一行两个整数N,输出一个整数,表示所求的个数。注意:此题对效率有要求,暴力解法通过率不高,请考虑高效的实现方式。原创 2024-04-30 23:07:24 · 304 阅读 · 1 评论 -
【2024华为OD机试真题-C卷D卷-100分】火星文计算2(C++/Java/Python)
已知火星人使用的运算符为#、$,其与地球人的等价公式如下:x#y=4*x+3*y+2x$y= 2*x+y+3其中 x、y 是无符号整数,地球人公式按C语言规则计算,火星人公式中,#的优先级高于$,相同的运算符,按从左到右的顺序计算现有一段火星人的字符串报文,请你来翻译并计算结果。原创 2024-04-30 22:27:06 · 415 阅读 · 0 评论 -
【2024华为OD机试真题-C卷D卷-100分】灰度图存储(C++/Java/Python)
黑白图像常采用灰度图的方式存储,即图像的每个像素填充一个灰色阶段值,256阶灰图是一个灰阶值取值范围为 0~255 的灰阶矩阵,0表示全黑,255表示全白,范围内的其他值表示不同的灰度。原创 2024-04-30 22:20:39 · 174 阅读 · 0 评论 -
【2024华为OD机试真题C卷D卷-100分】测试用例执行计划(C++/Java/Python)
某个产品当前迭代周期内有 N 个特性(F1,F2,......FN)需要进行覆盖测试,每个特性都被评估了对应的优先级,特性使用其 ID 作为下标进行标识。设计了 M 个测试用例(T1,T2,......,TM),每个测试用例对应一个覆盖特性的集合,测试用例使用其 ID 作为下标进行标识,测试用例的优先级定义为其覆盖的特性的优先级之和。原创 2024-04-30 22:03:44 · 193 阅读 · 0 评论 -
2024华为OD机试真题-多段线数据压缩(C++/Java/Python)-C卷D卷-100分
下图中,每个方块代表一个像素,每个像素用其行号和列号表示。为简化处理,多线段的走向只能是水平、竖直、斜向45度。上图中的多线段可以用下面的坐标串表示:(2,8),(3,7),(3,6),(3,5),(4,4),(5,3),(6,2),(7,3),(8,4),(7,5)。但可以发现,这种表示不是最简的,其实只需要存储6个蓝色的关键点即可,它们是线段的起点、拐点、终点,而剩下4个点是冗余的。现在,请根据输入的包含有冗余数据的多线段坐标列表,输出其最简化的结果。原创 2024-04-30 21:27:48 · 228 阅读 · 0 评论 -
2024华为OD机试真题-字符串筛选排序-(C++/Java/Python)-C卷D卷-100分
输入一个由N个大小写字母组成的字符串按照ASCII码值从小到大进行排序查找字符串中第K个最小ASCII码值的字母(k>=1)输出该字母所在字符串中的位置索引(字符串的第一个位置索引为0)k如果大于字符串长度则输出最大ASCII码值的字母所在字符串的位置索引如果有重复字母则输出字母的最小位置索引原创 2024-04-30 19:53:19 · 176 阅读 · 0 评论