自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 华为OD机试真题 - 取零食 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

华为OD机试 2024E卷题库疯狂收录中,刷题。

2025-03-12 09:33:31 787

原创 华为OD机试真题 - AI控制面板 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

由于AI识别误差,每次别到的指示灯位置可能有差异,以4个坐标值描述AI识别的指示灯的大小和位置(左上角x1,y1,右下角x2,y2),AI识别到面板上有N(1 ≤ N ≤ 100)个指示灯,灯大小一样,任意两个之间无重叠。排序后的编号列表,编号之间以空格分隔。第一行为N,表示灯的个数。

2025-03-12 09:32:06 236

原创 华为OD机试真题 - 业务优先级 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

客户根据优先级(1级最高,5级最低)到达银行,并且高优先级的客户可以随时插队到低优先级客户的前面。当银行办理业务时,需要按照优先级从高到低的顺序处理客户,如果有多个客户具有相同的最高优先级,则按照他们到达的顺序先后处理。某银行将客户分为了若干个优先级,1级最高,5级最低,当你需要在银行办理业务时,优先级高的人随时可以插队到优先级低的人的前面。输出包含若干行,对于字符p,输出一行,仅包含一个正整数num,表示办理业务的客户编号。客户2和客户3都是优先级2,客户2先到达,因此输出2。第三次’p’处理客户20。

2025-03-12 09:30:24 364

原创 华为OD机试真题 - 找到比自己强的人数 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

给定数组[[2,1][3,2]],每组表示师徒关系,第一个元素是第二个元素的师傅,数字代表排名,现在找出比自己强的徒弟。统计:1无徒弟→0;3的徒弟1和2(均比3强)→2;5的徒弟4(4<5)→1。关系:3->1、3->2,5->4。人员排序:[1,2,3,4,5]。

2025-03-12 09:28:27 322

原创 华为OD机试真题 - 组装最大可靠性设备 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

采用二分查找思路来确定设备的最大可能可靠性值。对于一个候选可靠性值 X:对于每种元器件类型,选择所有可靠性不低于 X 的元件,并取其中价格最便宜的那一个。将所有类型选取的最低价格累加,判断是否在预算 S 内。如果满足则说明候选 X 可行,再尝试更高的 X;否则降低 X。使用数组(或列表)来按照元器件类型存储所有元件信息,每个元件包括两个属性:可靠性和价格。由于每种类型的元件数量可能较多,直接遍历查找满足条件的最低价格即可(由于二分查找循环次数较少,整体时间复杂度较低)。

2025-03-12 09:26:34 295

原创 华为OD机试真题 - 学生方阵 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

本题的解题思路其实不难,遍历查找矩阵中每一个 M 点,然后求该 M 点的水平、垂直、正对角线、反对角线四个方向的 M 点个数,然后保留最大的个数。这个相连位置在一个直线上,方向可以是水平的,垂直的,成对角线的或者呈反对角线的.注:学生个数不会超过10000。请在矩形方阵中找到最大的位置相连的男生数量。输入的第一行为矩阵的行数和列数,接下来的n行为矩阵元素,元素间用","分隔。虽然所有方向都有连续的 ‘M’,但水平连续的数量最多为 5,因此结果为 5。输出一个整数,表示矩阵中最长的位置相连的男生个数。

2025-03-11 22:16:40 409

原创 华为OD机试真题 - 小华地图寻宝 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

在横坐标和纵坐标的数位之和不大于 k 的方格中存在黄金,每个格子中仅存在一克黄金,但横坐标和纵坐标位置之和大于 k 的方格存在危险不可进入。每个格子只有在横坐标和纵坐标的数位之和不大于 k 时才是安全且有黄金的区域,每个格子黄金 1 克。选择 DFS 的原因在于问题的状态空间较小(m, n ≤ 50),递归实现简洁,且 DFS 能确保遍历所有可能到达的格子。小华按照地图寻宝,地图上被划分成 m 行和 n 列的方格,横纵坐标范围是 [0, n-1] 和 [0, m-1]。小网格,经过搜索后可获得20克黄金。

2025-03-11 22:15:20 397

原创 华为OD机试真题 - 编码能力提升计划 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

动态规划(DP)检查可行性:设 dp[i] 表示前 i 道题可以用最少多少天完成,使得每一段(连续一部分题目)的耗时(总和减去该段最大值)均不超过 T。每天允许“看答案”一次,即可以将当天某一道题的时间变为0,从而该天的耗时为该天所有题目的时间和减去当天所选“看答案”的题目的时间(最优策略是选择耗时最大的题目来“看答案”,从而最大化时间减免)。为了提升软件编程能力,小王制定了刷题计划,他选择了题库中的n道题,编号从0到n-1,并计划在m天内按照题目编号顺序完成所有的题目(注意,小王不能用多天完成同一题)。

2025-03-11 22:13:28 334

原创 华为OD机试真题 - 完全二叉树非叶子部分后序遍历 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

这是一个完全二叉树,共7个节点,非叶子节点为下标 0、1、2,对应的节点值为 1、2、3。给定一个以顺序存储结构存储的完全二叉树序列(最多1000个整数),请找出此序列中完全二叉树的所有非叶子节点部分,然后采用后序遍历方式将此部分树(不包含叶子)输出。完全二叉树中,除最后一层外(也就是下标小于 n/2 的节点)都是非叶子节点(单节点树除外,题目规定只有一个节点时视为非叶子)。节点数为5,非叶子节点为下标 0 和 1(对应节点值1和2),后序遍历结果为先遍历节点2,再输出节点1。备注:输出数字以空格分隔。

2025-03-11 22:11:45 342

原创 华为OD机试真题 - AI处理器组合 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

现给定服务器可用的处理器编号数组array,以及任务申请的处理器数量 num,找出符合下列亲和性调度原则的芯片组合。每台物理设备具备8颗AI处理器,编号分别为0、1、2、3、4、5、6、7。编号0-3的处理器处于同一个链路中,编号4-7的处理器处于另外一个链路中,不同链路中的处理器不能通信。输出为组合列表,当array=[0,1,4,5,6,7],num=1时,输出为[[0],[1]]根据第一条亲和性调度原则,在剩余两个处理器的链路(0,1,2,3)中选择处理器。如果不存在符合要求的组合,则返回空列表。

2025-03-11 22:09:53 465

原创 华为OD机试真题 - 猴子吃桃 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

孙悟空可以决定他吃蟠桃的速度 K(单位:个/小时),每个小时他会选择一颗蟠桃树,从中吃掉 K 个蟠桃,如果这棵树上的蟠桃数小于 K,他将吃掉这棵树上所有蟠桃,然后这一小时内不再吃其余蟠桃树上的蟠桃。已知蟠桃园有 N 棵蟠桃树,第 i 棵蟠桃树上有 N[i](大于 0)个蟠桃,天兵天将将在 H(不小于蟠桃树棵数)小时后回来。一个小时只能在一棵桃树上吃,如果吃不完,下一个小时继续吃,如果吃完了,就不吃了,但不能去吃下一颗桃树,要守规矩。天兵天将8个小时后回来,孙悟空吃掉所有蟠桃的最小速度4。

2025-03-11 09:51:45 375

原创 华为OD机试真题 - 绘图机器 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

首行为两个整数N 和 E 表示有N条指令, 机器运行的横坐标终点值E,接下来N行 每行两个整数表示一条绘制指令x offsetY。给定的横坐标终点值E 以及若干条绘制指令 请计算绘制的直线和横坐标轴以及x=E的直线组成的图形面积。绘图机器的绘图笔初始位置在原点(0,0) 机器启动后按照以下规则来进行绘制直线。一个整数表示计算得到的面积 用例保证结果范围在0到4294967295之内。用例保证横坐标x以递增排序的方式出现 且不会出现相同横坐标x。

2025-03-11 09:48:42 204

原创 华为OD机试真题 - 荒岛求生 - 2024E卷(Java、Python、JavaScript、C、C++合集)

有一个荒岛,只有左右两个港口,只有一座桥连接这两个港口,现在有一群人需要从两个港口逃生,有的人往右逃生,有的往左逃生,如果两个人相遇,则PK,体力值大的能够打赢体力值小的,体力值相同则同归于尽,赢的人才能继续往前逃生,并较少相应地体力。当遇到负数(向左逃生的人)时,会检查栈顶的元素(也就是最后一个进入栈的向右逃生的人),并进行体力值的比较和PK处理。栈非常适合这种场景,因为我们只需要考虑最新加入的向右逃生的人(栈顶元素),逐步处理每次遇到的负数(向左逃生的人)。正数代表向右逃生,负数代表向左逃生。

2025-03-11 09:41:20 576

原创 华为OD机试真题 - 最长的顺子 - 2024E卷(Java、Python、JavaScript、C、C++合集)

例:3-4-5-6-7-8,7-8-9-10-J-Q,3-4-5-6-7-8-9-10-J-Q-K-A可用的牌3<4<5<6<7<8<9<10<J<Q<K<A<2<B(小王)C(大王),每种牌除大小王外有四种花色(共有13x4+2张牌)。斗地主起源于湖北十堰房县,据说是一位叫吴修全的年轻人根据当地流行的扑克玩法”跑得快”改编的,如今已风靡整个中国,并流行于互联网上。牌型:单顺,又称顺子,最少5张牌,最多12张牌(3…对手可能构成的最长的顺子(如果有相同长度的顺子,输出牌面最大的那一个)

2025-03-11 09:38:35 220

原创 华为OD机试真题 - 简易内存池 - 2024E卷(Java、Python、JavaScript、C、C++合集)

请求的内存大小表示请求分配指定大小内存,如果分配成功,返回分配到的内存首地址;释放的内存首地址 表示释放掉之前分配的内存,释放成功无需输出,如果释放不存在的首地址则输出error。注意:如果最后发起的命令是RELEASE,也是可以的,会返回最后一次REQUEST的首地址。5.释放操作只是针对首地址所对应的单个内存块进行操作,不会影响其它内存块。3.内存释放后可被再次分配,已释放的内存在空闲时不能被二次释放。2.内存池地址分配必须是连续内存,并优先从低地址分配。输出最后请求的内存的首地址。

2025-03-11 09:35:42 361

原创 华为OD机试真题 - 最优策略组合下的总的系统消耗资源数 - 2024E卷(Java、Python、JavaScript、C、C++合集)

假设由N个待串行用户,每个用户可以使用A/B/C三种不同的调度策略,不同的策略会消耗不同的系统资源。接下来表示每一行表示一个用户分别使用三个策略的资源消耗,resA resB resC。在通信系统中有一个常见的问题是对用户进行不同策略的调度,会得到不同系统消耗的性能。请你根据如下规则进行用户调度,并返回总的消耗资源数。规则是:相邻的用户不能使用相同的调度策略。最优策略组合下的总的系统消耗资源数。系统资源消耗8+9+7。第一行表示用户个数N。

2024-04-11 00:44:30 341 1

原创 华为OD机试真题 - 字符串排序 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

规则 2 :同一个英文字母的大小写同时存在时,按照输入顺序排列。规则 1 :英文字母从 A 到 Z 排列,不区分大小写。编写一个程序,将输入字符串中的字符按如下规则排序。规则 3 :非英文字母的其它字符保持原来的位置。数据范围:输入的字符串长度满足 1≤n≤1000。如,输入: Type 输出: epTy。如,输入: BabA 输出: aABb。

2024-04-11 00:37:28 230 1

原创 华为OD机试真题 - 字符串加解密 - 2024E卷(Java、Python、JavaScript、C、C++合集)

当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a;数据范围:输入的两个字符串长度满足 1≤n≤1000 ,保证输入的字符串都是只由大小写字母或者数字组成。当内容是数字时则把该数字加1,如0替换1,1替换2,9替换0;对输入的字符串进行加解密,并输出。第一行输入一串要加密的密码;第二行输入一串加过密的密码;解密方法为加密的逆过程。第一行输出加密后的字符;第二行输出解密后的字符;

2024-04-11 00:31:26 920 1

原创 华为OD机试真题 - 数组合并 - 2024E卷(Java、Python、JavaScript、C、C++合集)

第3~n行是需要合并的数组,不同的数组用换行分割,元素之间用逗号分割,最大不超过100个元素。如果改行不足固定长度,或者已经为空,则直接取出剩余部分的内容放到新的数组中继续下一行。合并规则从每个数组里按顺序取出固定长度的内容,合并到新的数组,取完的内容会删除掉。第二行是整数数组的数目,数目 0<num<10000;现在有多组整数数组,需要将他们合并成一个新的数组。第一行,每次读取的固定长度,长度0<len<10;再循环回到第一行获得7,9,5。先遍历第一行 获得2,5,6。再遍历第二行 获得1,7,4。

2024-04-11 00:23:48 349 1

原创 华为OD机试真题 - 拼接URL - 2024E卷(Java、Python、JavaScript、C、C++合集)

给定一个URL前缀和URL后缀,通过”,”分割,需要将其连接为一个完整的URL,如果前缀结尾和后缀开头都没有“/”,需自动补上“/”连接符,如果前缀结尾和后缀开头都为“/”,需自动去重。URL前缀(一个长度小于100的字符串),URL后缀(一个长度小于100的字符串)。约束:不用考虑前后缀URL不合法情况。

2024-04-11 00:16:35 338 1

原创 华为OD机试真题 - 根据员工出勤信息,判断本次是否能获得出勤奖 - 2024E卷(Java、Python、JavaScript、C、C++合集)

根据考勤数据字符串,如果能得到考勤奖输出true否则输出false,对于输出示例的结果应为true false。用户的考勤数据字符串记录条数 >=1。公司用一个字符串来标识员工的出勤信息。输入字符串长度 <10000;

2024-04-11 00:11:01 812 1

原创 华为OD机试真题 - 吃到最多的刚好合适的菜 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

题目要求用最合理的策略,最多能吃到刚好合适的菜的数量。每道菜下锅后需要经过一定的时间才能变得刚好合适,而你的手速为 m,每次捞菜后至少需要过 m 秒才能再次捞菜。你希望吃到最多的刚好合适的菜,但你的手速不够快,用m代表手速,每次下手捞菜后至少要过m庙才能在捞(每次只能捞一个)。一共下了两个菜,在第一秒下的菜需要到第三秒才能吃,在第二秒下的菜,也要第三秒才能吃,所以只能吃一个。第一行两个整数n,m,其中n代表往锅里下的菜的个数,m代表手速。输出一个整数代表用最合理的策略,最多能吃到刚好合适的菜的数量。

2024-04-11 00:00:58 676 1

原创 华为OD机试真题 - 数组合并 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

第3~n行是需要合并的数组,不同的数组用换行分割,元素之间用逗号分割,最大不超过100个元素。如果改行不足固定长度,或者已经为空,则直接取出剩余部分的内容放到新的数组中继续下一行。合并规则从每个数组里按顺序取出固定长度的内容,合并到新的数组,取完的内容会删除掉。第二行是整数数组的数目,数目 0

2024-03-29 20:23:39 256 1

原创 华为OD机试真题 - 构成正方形的数量 - 2024 E卷(Java、Python、JavaScript、C、C++合集)

考虑到学生上学安全问题,需要所有学生家到学校距离最短。请问,学校要建在什么位置,能使得学校到各个学生家的距离之和最短?输入的第二行是一个数组(0<= <=10000),表示每户家庭的位置,所有家庭的位置都不相同。20到各个家庭的距离分别为 20 10 0 10 20 30,总和为 90,最小。输出一行,一个整数,表示你确定的学校位置。如有多个位置相同,则输出值最小的位置。输入的第一行是一个整数N(1<=N<=1000),表示有N户家庭。有多个位置满足条件,但是20是最小的那个,所以输出20。

2023-08-04 11:05:59 325 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除