
华为OD机试真题 (Java/JS/Py/C)
文章平均质量分 84
每一题都有详细的解题思路、详细的代码注释、测试用例,订阅后,专栏内的文章都可看,发现新题目,随时更新。
优惠券已抵扣
余额抵扣
还需支付
¥59.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
算法大师
这个作者很懒,什么都没留下…
展开
-
2025华为OD机试备考攻略 以及最新题库目录分值说明 + 考点说明+在线OJ
OD,全称(Outsourcing Dispacth)模式,目前华为和德科联合招聘的简称。华为社招基本都是OD招聘,17级以下都是OD模式(13-17)。原创 2023-03-18 18:29:56 · 417876 阅读 · 0 评论 -
2025最新华为OD机试,独家整理总结上岸技巧,答读者问华为OD 华为OD机试备考攻略
华为OD员工并非华为公司员工,而是由外包公司德科派驻到华为工作。德科是OD员工的雇主,负责签订合同和管理劳务关系,并发放工资和福利。华为推行同工同酬,所以OD的薪资与正式员工差不多。TIPS:每年都有OD员工转为正式员工。华为OD的入职考核相当严格,特别是在信息安全和日常考核方面,行业内也有很多评论。试用期转正相对容易,主要看个人是否适应公司文化和业务能力是否达标。虽然公司提倡狼性文化,但试用期不通过的情况比较少。入职后还会进行背景调查,应该实事求是,不要犯傻。原创 2022-03-08 14:30:00 · 48071 阅读 · 0 评论 -
华为OD机试E卷 - 分奖金(Java & Python& JS & C++ & C )
华为OD机试E卷 - 分奖金(Java & Python& JS & C++ & C )公司老板做了一笔大生意,想要给每位员工分配一些奖金,想通过游戏的方式来决定每个人分多少钱。原创 2025-03-25 21:39:14 · 15 阅读 · 0 评论 -
华为OD机试E卷 - 查找充电设备组合(Java & Python& JS & C++ & C )
某个充电站,可提供 n 个充电设备,每个充电设备均有对应的输出功率。任意个充电设备组合的输出功率总和,均构成功率集合 P 的 1 个元素。功率集合 P 的最优元素,表示最接近充电站最大输出功率 p_max 的元素。原创 2024-08-21 12:30:54 · 1431 阅读 · 0 评论 -
华为OD机试E卷 - 空栈压数(Java & Python& JS & C++ & C )
向一个空栈压入正整数,每当压入一个整数时,执行以下规则(设: 栈顶至栈底整数依次编号为 n1, n2, …, nx,其中n1 为最新压入的整数)如果 n1 = n2,则 n1、n2全部出栈,压入新数据 m (m = 2*n1)如果 n1 = n2 + … + ny( y的范围为[3,x]) ,则 n1, n2, …, ny 全部出栈,压入新数据 m (m = 2*n1)。如果上述规则都不满足,则不做操作。如:依次向栈压入 6、1、2、3,原创 2024-08-21 11:09:29 · 2425 阅读 · 0 评论 -
华为OD机试E卷 - 斗地主之顺子(Java & Python& JS & C++ & C )
在斗地主扑克牌游戏中, 扑克牌由小到大的顺序为:3,4,5,6,7,8,9,10,J,Q,K,A,2,玩家可以出的扑克牌阵型有:单张、对子、顺子、飞机、炸弹等。其中顺子的出牌规则为:由至少5张由小到大连续递增的扑克牌组成,且不能包含2。例如:{3,4,5,6,7}、{3,4,5,6,7,8,9,10,J,Q,K,A}都是有效的顺子;而{J,Q,K,A,2}、 {2,3,4,5,6}、{3,4,5,6}、{3,4,5,6,8}等都不是顺子。原创 2024-08-18 12:28:58 · 8863 阅读 · 0 评论 -
华为OD机试E卷 -猜字谜(Java & Python& JS & C++ & C )
小王设计了一个简单的猜字谜游戏,游戏的谜面是一个错误的单词,比如nesw,玩家需要猜出谜底库中正确的单词。猜中的要求如下:请你写一个程序帮忙在谜底库中找到正确的谜底。谜面是多个单词,都需要找到对应的谜底,如果找不到的话,返回”not found”原创 2024-08-21 13:13:32 · 3102 阅读 · 0 评论 -
华为OD机试E卷 - boss的收入(Java & Python& JS & C++ & C )
一个XX产品行销总公司,只有一个boss,其有若干一级分销,一级分销又有若干二级分销,每个分销只有唯一的上级分销。规定,每个月,下级分销需要将自己的总收入(自己的+下级上交的)每满100元上交15元给自己的上级。现给出一组分销的关系,和每个分销的收入,请找出boss并计算出这个boss的收入。输入:分销关系和收入:[[分销id 上级分销id 收入], [分销id 上级分销id 收入], [分销id 上级分销id 收入]]输出:[boss的ID, 总收入]原创 2024-08-21 11:23:58 · 3750 阅读 · 0 评论 -
华为OD机试E卷 - 最大利润/贪心的商人(Java & Python& JS & C++ & C )
商人经营一家店铺,有number种商品,由于仓库限制每件商品的最大持有数量是,每种商品的价格是通过对商品的买进和卖出获取利润,请给出商人在days天内能获取的最大的利润注:同一件商品可以反复买进和卖出。原创 2024-08-21 12:54:10 · 3631 阅读 · 0 评论 -
华为OD机试E卷 - 数大雁(Java & Python& JS & C++ & C )
一群大雁往南飞,给定一个字符串记录地面上的游客听到的大雁叫声,请给出叫声最少由几只大雁发出。具体的: 1.大雁发出的完整叫声为”quack“,因为有多只大雁同一时间嘎嘎作响,所以字符串中可能会混合多个”quack”。 2.大雁会依次完整发出”quack”,即字符串中’q’ ,‘u’, ‘a’, ‘c’, ‘k’ 这5个字母按顺序完整存在才能计数为一只大雁。如果不完整或者没有按顺序则不予计数。原创 2024-08-21 11:02:26 · 6011 阅读 · 23 评论 -
华为OD机试E卷 - 转骰子(Java & Python& JS & C++ & C )
骰子是一个立方体,每个面一个数字,初始为左1,右2,前3(观察者方向),后4,上5,下6,用123456表示这个状态,放置在平面上,现从123456这个初始状态开始,根据输入的动作序列,计算得到最终的状态。骰子的初始状态和初始状态转动后的状态如图所示。原创 2024-09-30 18:25:11 · 539 阅读 · 0 评论 -
华为OD机试E卷 - 磁盘容量排序(Java & Python& JS & C++ & C )
现在给定 n 块磁盘的容量,请对它们按从小到大的顺序进行稳定排序。例如给定5块盘的容量:排序后的结果为:注意单位可以重复出现,上述 3M12G9M 表示的容量即为:3M+12G+9M,和 12M12G 相等。原创 2024-10-07 09:43:09 · 556 阅读 · 0 评论 -
华为OD机试E卷 - 整数编码(Java & Python& JS & C++ & C )
实现一种整数编码方法,使得待编码的数字越小,编码后所占用的字节数越小。。原创 2024-10-12 14:44:25 · 540 阅读 · 0 评论 -
华为OD机试E卷 - 运维日志排序(Java & Python& JS & C++ & C )
运维工程师]采集到某产品线网运行一天产生的日志n条,现需根据日志时间先后顺序对日志进行排序,日志时间格式为H:M:S.N。时间可能并没有补全,也就是说,01:01:01.001也可能表示为1:1:1.1。原创 2024-10-08 09:16:57 · 583 阅读 · 0 评论 -
华为OD机试E卷 - 编码能力提升计划(Java & Python& JS & C++ & C )
这意味着小王有9道题目,每道题目的完成时间分别是1, 2, 2, 3, 5, 4, 6, 7, 8,且他需要在5天内完成这些题目。目标是使得这5天中最繁忙的一天(耗时最长的一天)的耗时T尽可能小。原创 2024-10-14 17:11:56 · 474 阅读 · 0 评论 -
华为OD机试E卷 - 开心消消乐(Java & Python& JS & C++ & C )
给定一个N行M列的二维矩阵,矩阵中每个位置的数字取值为0或1。按照上述规则示例中的矩阵只最少需要点击2次后,所有值均为0。请问,给定一个矩阵,最少需要点击几次后,所有数字均为0?原创 2024-10-06 17:47:52 · 804 阅读 · 0 评论 -
华为OD机试E卷 - 宜居星球改造计划(Java & Python& JS & C++ & C )
2XXX年,人类通过对火星的大气进行宜居改造分析,使得火星已在理论上具备人类宜居的条件;由于技术原因,无法一次性将火星大气全部改造,只能通过局部处理形式;假设将火星待改造的区域为row *column的网格,每个网格有3个值,宜居区、可改造区、死亡区,使用YES、NO、NA代替,YES表示该网格已经完成大气改造,NO表示该网格未进行改造,后期可进行改造,NA表示死亡区,不作为判断是否改造完的宜居,无法穿过;原创 2024-10-07 22:02:38 · 655 阅读 · 0 评论 -
华为OD机试E卷 - 免单统计(Java & Python& JS & C++ & C )
华为商城举办了一个促销活动,如果某顾客是某一秒内最早时刻下单的顾客(可能是多个人),则可以获取免单。请你编程计算有多少顾客可以获取免单。原创 2024-10-01 10:43:42 · 762 阅读 · 0 评论 -
华为OD机试E卷 - 找最小数(Java & Python& JS & C++ & C )
给一个正整数NUM1,计算出新正整数NUM2,NUM2为NUM1中移除N位数字后的结果,需要使得NUM2的值最小。原创 2024-10-06 18:51:54 · 831 阅读 · 0 评论 -
华为OD机试E卷 - 完美走位(Java & Python& JS & C++ & C )
在第一人称射击游戏中,玩家通过键盘的A、S、D、W四个按键控制游戏人物分别向左、向后、向右、向前进行移动,从而完成走位。假设玩家每按动一次键盘,游戏任务会向某个方向移动一步,如果玩家在操作一定次数的键盘并且各个方向的步数相同时,此时游戏任务必定会回到原点,则称此次走位为完美走位。ASDA),请通过更换其中一段连续走位的方式使得原走位能够变成一个完美走位。其中待更换的连续走位可以是相同长度的任何走位。请返回待更换的连续走位的最小可能长度。如果原走位本身是一个完美走位,则返回0。。原创 2024-10-15 09:29:46 · 675 阅读 · 0 评论 -
华为OD机试E卷 - 比赛 / N个选手比赛前三名(Java & Python& JS & C++ & C )
一个有N个选手参加比赛,选手编号为1~N(3<=N<=100),有M(3<=M<=10)个评委对选手进行打分。打分规则为每个评委对选手打分,最高分10分,最低分1分。请计算得分最多的3位选手的编号。如果得分相同,则得分高分值最多的选手排名靠前(10分数量相同,则比较9分的数量,以此类推,用例中不会出现多个选手得分完全相同的情况)。。原创 2024-10-15 09:44:16 · 605 阅读 · 0 评论 -
华为OD机试E卷 - 勾股数元组(Java & Python& JS & C++ & C )
如果3个正整数abc(a, b, c)abc满足a2b2c2a2b2c2,则称abc(a, b, c)abc为勾股数。例如,345(3, 4, 5)345是一个典型的勾股数,因为324252324252。题目进一步要求:如果勾股数abc(a, b, c)abc之间任意两数互质(即aaa与bbbaaa与cccbbb与ccc之间都没有公约数,除了1以外),则称其为勾股数元组。345。原创 2024-10-12 09:34:16 · 535 阅读 · 0 评论 -
华为OD机试E卷 - 悄悄话(Java & Python& JS & C++ & C )
给定一个二叉树,每个节点上站一个人,节点数字表示父节点到该节点传递悄悄话需要花费的时间。初始时,根节点所在位置的人有一个悄悄话想要传递给其他人,求二叉树所有节点上的人都接收到悄悄话花费的时间。原创 2024-10-06 17:25:51 · 705 阅读 · 0 评论 -
华为OD机试E卷 - 分班问题 、幼儿园分班(Java & Python& JS & C++ & C )
儿园两个班的小朋友在排队时混在了一起,每位小朋友都知道自己是否与前面一位小朋友同班,请你帮忙把同班的小朋友找出来。小朋友的编号是整数,与前一位小朋友同班用Y表示,不同班用N表示。原创 2024-10-07 21:09:40 · 560 阅读 · 0 评论 -
华为OD机试2025A卷 - 战场索敌(Java & Python& JS & C++ & C )
有一个大小是N*M的战场地图,被墙壁 ‘#’ 分隔成大小不同的区域,上下左右四个方向相邻的空地 ‘.’ 属于同一个区域,只有空地上可能存在敌人’E”,请求出地图上总共有多少区域里的敌人数小于K。原创 2024-10-08 09:16:48 · 493 阅读 · 0 评论 -
华为OD机试E卷 - 数组组成的最小数字(Java & Python& JS & C++ & C )
给定一个整型数组,请从该数组中选择3个元素组成最小数字并输出(如果数组长度小于3,则选择数组中所有元素来组成最小数字)。。原创 2024-10-12 09:42:52 · 579 阅读 · 0 评论 -
华为OD机试E卷 - 优秀学员统计(Java & Python& JS & C++ & C )
公司某部门软件教导团正在组织新员工每日打卡学习活动,他们开展这项学习活动已经一个月了,所以想统计下这个月优秀的打卡员工。每个员工会对应一个id,每天的打卡记录记录当天打卡员工的id集合,一共30天。请你实现代码帮助统计出打卡次数top5的员工。加入打卡次数相同,将较早参与打卡的员工排在前面,如果开始参与打卡的时间还是一样,将id较小的员工排在前面。注:不考虑并列的情况,按规则返回前5名员工的id即可,如果当月打卡的员工少于5个,按规则排序返回所有有打卡记录的员工id。原创 2024-10-07 09:42:35 · 566 阅读 · 0 评论 -
华为OD机试E卷 - 最佳对手 / 实力差距最小总和(Java & Python& JS & C++ & C )
游戏里面,队伍通过匹配实力相近的对手进行对战。但是如果匹配的队伍实力相差太大,对于双方游戏体验都不会太好。给定n个队伍的实力值,对其进行两两实力匹配,两支队伍实例差距在允许的最大差距d内,则可以匹配。要求在匹配队伍最多的情况下匹配出的各组实力差距的总和最小。原创 2024-10-08 09:38:08 · 764 阅读 · 0 评论 -
华为OD机试E卷 - 任务最优调度(Java & Python& JS & C++ & C )
给定一个正整数数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。请计算执行完所有任务所需的最短时间。说明:数组最大长度为1000,速度最大值1000。原创 2024-10-10 10:43:00 · 658 阅读 · 0 评论 -
华为OD机试2025A卷 - 最佳植树距离(Java & Python& JS & C++ & C )
小明需要在一条直线上的某些可用位置种植树苗,目标是种植尽量均匀,最大化不同树苗之间的最小间距。问题是给定可用种树的点的坐标和树苗的数量,要求找到一个**最佳的最小间距**,使得种植的树苗之间尽量分开。原创 2024-10-12 15:15:10 · 488 阅读 · 0 评论 -
华为OD机试E卷 - 星际篮球争霸赛/MVP争夺战(Java & Python& JS & C++ & C )
在星球争霸篮球赛对抗赛中,最大的宇宙战队希望每个人都能拿到 MVP,MVP 的条件是单场最高分得分获得者。可以并列所以宇宙战队决定在比赛中尽可能让更多队员上场,并且让所有得分的选手得分都相同,然而比赛过程中的每一分钟的得分都只能由某一个人包揽。。原创 2024-10-21 10:09:16 · 640 阅读 · 0 评论 -
华为OD机试E卷 -字符串重新排序(Java & Python& JS & C++ & C )
给定一个字符串s,s包括以空格分隔的若干个单词,请对s进行如下处理后输出:1、单词内部调整:对每个单词字母重新按字典序排序请输出处理后的字符串,每个单词以一个空格分隔。原创 2024-11-02 20:40:23 · 409 阅读 · 0 评论 -
华为OD机试E卷 - 玩牌高手(Java & Python& JS & C++ & C )
给定一个长度为n的整型数组,表示一个选手在n轮内可选择的牌面分数。选手基于规则选牌,请计算所有轮结束后其可以获得的最高总分数。。原创 2024-10-17 16:31:19 · 563 阅读 · 0 评论 -
华为OD机试E卷 - Linux发行版的数量(Java & Python& JS & C++ & C )
Linux操作系统有多个发行版,distrowatch.com提供了各个发行版的资料。这些发行版互相存在关联,例如Ubuntu基于Debian开发,而Mint又基于Ubuntu开发,那么我们认为Mint同Debian也存在关联。发行版集是一个或多个相关存在关联的操作系统发行版,集合内不包含没有关联的发行版。给你一个 n * n 的矩阵 isConnected,其中 isConnected[i][j] = 1 表示第 i 个发行版和第 j 个发行版直接关联,而 isConnected[i][j] = 0 表示原创 2024-10-16 21:57:14 · 593 阅读 · 0 评论 -
华为OD机试E卷 - 双十一 最大花费金额(Java & Python& JS & C++ & C )
双十一众多商品进行打折销售,小明想购买自己心仪的一些物品,但由于受购买资金限制,所以他决定从众多心仪商品中购买三件,而且想尽可能的花完资金。现在请你设计一个程序帮助小明计算尽可能花费的最大资金数额。原创 2024-11-02 21:05:59 · 417 阅读 · 0 评论 -
华为OD机试E卷 - 书籍叠放(Java & Python& JS & C++ & C )
书籍的长、宽都是整数对应(l,w)。如果书A的长宽度都比B长宽大时,则允许将B排列放在A上面。现在有一组规格的书籍,书籍叠放时要求书籍不能做旋转,请计算最多能有多少个规格书籍能叠放在一起。。原创 2024-10-21 10:25:56 · 477 阅读 · 0 评论 -
华为OD机试E卷 - 数字序列比大小(Java & Python& JS & C++ & C )
A,B两个人玩一个数字比大小的游戏,在游戏前,两个人会拿到相同长度的两个数字序列,两个数字序列不相同的,且其中的数字是随机的。A,B各自从数字序列中挑选出一个数字进行大小比较,赢的人得1分,输的人扣1分,相等则各自的分数不变。用过的数字需要丢弃。求A可能赢B的最大分数。原创 2024-11-04 11:34:17 · 363 阅读 · 0 评论 -
华为OD机试E卷 - 计算最接近的数(Java & Python& JS & C++ & C )
给定一个数组X和正整数K,请找出使表达式X[i] - x[i +1] … - X[i + K 1],结果最接近于数组中位数的下标i,如果有多个i满足条件,请返回最大的i。其中,数组中位数:长度为N的数组,按照元素的值大小升序排列后,下标为N/2元素的值补充说明:无无输入输出说明这道题目要求我们找到一个数组中某个范围内的下标,使得该下标对应的计算结果最接近于数组的中位数。以下是题目的具体解释:输入与输出:中位数的定义:计算表达式:寻找最接近中位数的结果:以示例 和 为例:计算中位数:计算结果:结原创 2024-11-02 20:53:11 · 421 阅读 · 0 评论 -
华为OD机试E卷 - AI面板识别/AI控制面板(Java & Python& JS & C++ & C )
AI识别到面板上有N(1 ≤ N ≤ 100)个指示灯,灯大小一样,任意两个之间无重叠。由于AI识别误差,每次别到的指示灯位置可能有差异,以4个坐标值描述AI识别的指示灯的大小和位置(左上角x1,y1,右下角x2,y2),。原创 2024-10-28 10:03:52 · 461 阅读 · 0 评论 -
华为OD机试E卷 - 最优资源分配/芯片资源占用(Java & Python& JS & C++ & C )
某块业务芯片最小容量单位为1.25G,总容量为M*1.25G,对该芯片资源编号为1,2,…,M。该芯片支持3种不同的配置,分别为A、B、C。某块板卡上集成了N块上述芯片,对芯片编号为1,2,…,N,各个芯片之间彼此独立,不能跨芯片占用资源。给定板卡上芯片数量N、每块芯片容量M、用户按次序配置后,请输出芯片资源占用情况,保证消耗的芯片数量最少。资源分配规则:按照芯片编号从小到大分配所需资源,芯片上资源如果被占用标记为1,没有被占用标记为0.原创 2024-11-02 09:59:26 · 303 阅读 · 0 评论