一剑破天门
QQ:303091532 加QQ进群,
最纯净OD社群
最纯净版的OD社群,包含2024最新华为OD题库、真实考试报告、真实面试实况等内容,独家资源其他地方基本找不到。进入后可以获得一对一答疑服务,群内除了博主以外还有多为老师帮忙答疑,保证可以在3小时之内回复所有问题。
最新C、D卷题库
题库每周更新,根据最近考试的小伙伴反馈以及从其他合作伙伴的渠道提前获取最新真题,保证题库的时效性
展开
-
华为OD机试算法D卷:特殊的加密算法
需要按明文串的数字顺序在密码本里找到同样的数字串,密码本里的数字串是由相邻的单元格数字组成,上下和左右是相邻的,注意:对角线不相邻,同一个单元格的数字不能重复使用。明文:"0 0 2 4",密文:"0 0 0 1 0 2 0 3" 和 "0 0 0 1 0 2 1 2",返回字典序最小的"0 0 0 1 0 2 0 3"如明文第 i 位 Data[i] 对应密码本单元格为 Book[x][y],则明文第 i 位对应的密文为X Y,X和Y之间用空格隔开。明文:"0 3",密文:"0 1 1 1"原创 2024-05-13 10:47:18 · 32 阅读 · 0 评论 -
华为OD机试算法D卷:约瑟夫问题
第一轮计数出列数字为 2,计数值更新 m=2,出列后数列为 3,1,4,从数值 4 所在位置从新开始计数。比如:输入的随机数列为:3,1,2,4,初始计数值 m=7,从数列首位置开始计数(数值 3 所在位置)第二轮计数出列数字为 3,计数值更新 m=3,出列后数列为 1,4,从数值 1 所在位置开始计数。第三轮计数出列数字为 1,计数值更新 m=1,出列后数列为 4,从数值 4 所在位置开始计数。输出数值出列顺序为:2,3,1,4。从数列首位置开始计数,计数到 m 后,将数列该位置数值替换计数值 m,原创 2024-05-10 11:10:14 · 14 阅读 · 0 评论 -
华为OD机试算法D卷:水仙花数
从10^(n-1)开始遍历到10^n-1之间的所有整数,对于每个整数,计算其各位数字的n次方和,如果等于该整数本身,则说明找到了一个水仙花数。例如153是水仙花数,153是一个3位数,并且153 = 1^3 + 5^3 + 3^3。每找到一个水仙花数,将计数器count加1,直到count等于m时,返回当前的水仙花数。如果遍历完所有的整数都没有找到第m个水仙花数,返回最后一个水仙花数和m的乘积。首先,根据输入的n,判断是否在3到7之间。所谓水仙花数,是指一个n位的正整数,其各位数字的n次方和等于该数本身。原创 2024-05-10 10:00:13 · 137 阅读 · 0 评论 -
华为OD机试算法D卷:比较两个版本号的大小
如果所有位置上的子版本号都相等,则返回0。输入两个版本号 version1 和 version2,每个版本号由多个子版本号组成。在比较子版本号时,需要先处理子版本号前面的0,然后根据题目给定的比较规则进行比较。子版本号之间由 “.” 隔开,由大小写字母、数字组成,并且至少有一个字符。首先,将输入的两个版本号字符串按照"."进行分割,得到两个子版本号列表。子版本号前面的0不参与比较,比如 001 和 1 是相等的。然后,遍历两个子版本号列表,逐个比较每个子版本号的大小。第一行输入version1。原创 2024-05-07 09:32:45 · 12 阅读 · 0 评论 -
华为OD机试算法D卷:出错的电路
某生产门电路的厂商发现某一批次的或门电路不稳定,具体现象为计算两个二进制数的或操作时,第一个二进制数中某两个比特位会出现交换,交换的比特位置是随机的,但只交换这两个位,其他位不变。为了评估影响和定位出错的根因,工程师需要研究在各种交换的可能下,最终的或结果发生改变的情况有多少种。第二行有一个长为N的二进制数,表示与电路的第一个输入数,即会发生比特交换的输入数。对于每个可以交换的比特位,我们将其与第二个输入数进行或操作,判断结果是否改变。如果结果改变,说明这种交换会影响最终的或结果,将计数器加一。原创 2024-05-06 12:02:12 · 9 阅读 · 0 评论 -
华为OD机试算法D卷:打印任务排序
最后打印剩下的优先级为1的任务,其序号为2。然后检查队列余下任务中有没有比A优先级更高的任务,如果有比A优先级高的任务,则将任务A放到队列尾部,否则就执行任务A的打印。如果没有比A优先级高的任务,则将任务A的序号添加到结果列表中,并从队列中移除任务A。输入一行,为每个任务的优先级,优先级之间用逗号隔开,优先级取值范围是1~9。输出一行,为每个任务的打印顺序,打印顺序从0开始,用逗号隔开。如果有比A优先级高的任务,则将任务A放到队列尾部。队列头部任务的优先级为9,最先打印,故序号为0;原创 2024-05-06 11:34:43 · 9 阅读 · 0 评论 -
华为OD机试算法D卷: TLV解析
(2)结果数组中tag值已知,需要填充每个tag对应数据的length和valueOffset值(valueOffset为value在原消息包中的起始偏移量(从0开始,以字节为单位)),对于每个需要匹配的tag值,在解析出的TLV列表中查找对应的tag,如果找到,则记录其length和valueOffset;即将消息包中的tag与结果数组中的tag进行匹配(可能存在匹配失败的情况,若结果数组中的tag在消息包中找不到,则length和valueOffset都为0)首先,将输入的消息包字符串转换为字节列表。原创 2024-05-06 11:29:25 · 8 阅读 · 0 评论 -
华为OD机试算法D卷: 剩余银饰的重量
选出 3 7 10,需要计算 (7-3) 和 (10-7) 的差值,即(7-3)-(10-7)=1,所以数组转换为 [1],剩余一块,返回该块重量,返回1。有 N 块二手市场收集的银饰,每块银饰的重量都是正整数,收集到的银饰会被熔化用于打造新的饰品。如果 x == y 且 y!= y 且 y == z,会剩余重量为 y - x 的银块无法被熔掉;根据题目描述的规则,计算每次熔掉后剩余的银块重量,并将剩余的银块重新放入数组中。第二行为n块银饰的重量,重量的取值范围为[1,2000],重量之间使用空格隔开。原创 2024-05-06 11:27:03 · 26 阅读 · 0 评论 -
华为OD机试算法D卷:篮球游戏
如老师按顺序放入1、2、3、4、5 共有 5 个编号的篮球,那么小朋友可以依次取出编号为1、2、3、4、5 或者 3、1、2、4、5 编号的篮球,无法取出 5、1、3、2、4 编号的篮球。然后,遍历小朋友要取出的篮球编号序列,对于每个编号,检查它是否与当前桶中的篮球编号相同。每个篮球有单独的编号,老师可以连续放入一个或多个篮球,小朋友可以在桶左边或右边将篮球取出,当桶只有一个篮球的情况下,必须从左边取出。第二行的数字作为要检查是否能够按照放入的顺序取出给定的篮球的编号,其中篮球的编号用逗号进行分隔。原创 2024-05-06 11:21:35 · 20 阅读 · 0 评论 -
华为OD机试算法D卷:快速人名查找
遍历该人名的所有单词,检查给定字符串是否以这些单词的连续前几位组成。如果是,则将该人名添加到结果列表中。快速人名查找要求︰人名的每个单词的连续前几位能组成给定字符串,一定要用到每个单词。遍历人名列表,对于每个人名,将其按空格分隔,得到一个包含该人名所有单词的列表。将输入的人名字符串按逗号分隔,得到一个包含所有人名的列表。然后给定一个字符串,进行快速人名查找,符合要求的输出。给一个字符串,表示用’,’分开的人名。第一行是人名,用’,’分开的人名。第二行是 查找字符串。原创 2024-05-06 11:19:00 · 7 阅读 · 0 评论 -
华为OD机试算法D卷:考古学家
当石碑碎片上的内容为“a”,“b”,“ab”时,则可能的组合有“aabb”,“abab”,“abba”,“baab”,“baba”当石碑碎片上的内容为“a”,“b”,“c”时,则组合有“abc”,“acb”,“bac”,“bca”,“cab”,“cba”如果存在石碑碎片内容完全相同,则由于碎片间的顺序变换不影响复原后的碑文内容,即相同碎片间的位置变换不影响组合。当石碑碎片上的内容为“a”,“b”,“a”时,则可能的组合有“aab”,“aba”,“baa”第二行依次输入石碑碎片上的文字内容s,共有n组。原创 2024-05-06 11:15:07 · 11 阅读 · 0 评论 -
华为OD机试算法D卷:矩阵匹配
这可以通过回溯法实现,遍历矩阵中的每个元素,将其加入当前组合,然后递归地搜索下一个元素,直到找到满足条件的组合。从一个 N * M(N ≤ M)的矩阵中选出 N 个数,任意两个数字不能在同一行或同一列,求选出来的 N 个数中第 K 大的数字的最小值是多少。种组合数组,每个组合数组种第 K 大的数中的最小值。最后,我们需要找到所有组合中第 K 大的数字的最小值。这可以通过对所有组合中第 K 大的数字进行排序,然后取第一个元素实现。种组合数组,每个组合数组种第 K 大的数中的最小值;原创 2024-05-06 11:10:38 · 18 阅读 · 0 评论 -
华为OD机试算法D卷:简易内存池
题目描述 请实现一个简易内存池,根据请求命令完成内存分配和释放。 内存池支持两种操作命令,REQUEST和RELEASE,其格式为: REQUEST=请求的内存大小 表示请求分配指定大小内存,如果分配成功,返回分配到的内存首地址;如果内存不足,或指定的大小为0,则输出error。 RELEASE=释放的内存首地址 表示释放掉之前分配的内存,释放成功无需输出,如果释放不存在的首地址则输出error。 注意:1. 内存池总大小为100字节。 2. 内存池地址原创 2024-05-06 11:03:37 · 111 阅读 · 0 评论 -
华为OD机试算法D卷:计算疫情扩散时间
如果初始地图上所有区域全部都被感染,或者没有被感染区域,返回-1。一行N*N个数字(只包含0,1,不会有其他数字)表示一个地图,数字间用,分割,0表示未感染区域,1表示已经感染区域 每N个数字表示地图中一行,输入数据共表示N行N列的区域地图。在BFS过程中,记录每个区域的感染天数,如果某个区域已经被感染过,直接返回其感染天数。接下来,使用广度优先搜索(BFS)算法,从每个未感染区域开始,计算感染该区域的天数。例如输入1,0,1,0,0,0,1,0,1,表示地图。然后,遍历地图,统计未感染区域的数量。原创 2024-05-06 10:58:38 · 5 阅读 · 0 评论 -
华为OD机试算法D卷:欢乐的周末
通过手机交流,他们在地图上选择了多个聚餐地点(由于自然地形等原因,部分聚餐地点不可达),求小华和小为都能到达的聚餐地点有多少个?然后,我们可以使用深度优先搜索(DFS)算法来遍历地图,找到所有可以到达的聚餐地点。2 为小华或者小为,地图中必定有且仅有2个 (非障碍物)可以被两方都到达的聚餐地点数量,行末无空格。首先,我们需要找到地图上小华和小为的位置。最后,统计可以被两方都到达的聚餐地点数量。第一行输入地图的长宽为3和4。第一行输入地图的长宽为4和4。聚餐的地点数量为 k,则。第一行输入 m 和 n。原创 2024-05-06 10:53:38 · 373 阅读 · 0 评论 -
华为OD机试算法D卷:伐木工
显然,选择因子2和5进行切割可以得到最大乘积,因为2×2×5=202×2×5=20,而其他组合(例如1和10)的乘积会小于20。所以伐木工应切割出2米和5米长的木材,最终输出为"2 2 5"或"2 5 5"(取决于具体的排序要求)。如果树木的长度X是一个素数或者不能均匀分割成几个相等的部分,那么最接近X的乘积将是X本身(即不进行切割)。如果X可以均匀分割,那么最优的策略是尽可能切割出长度为a的木材,其中a是X的一个因子。一根X米长的树木,伐木工切割成不同长度的木材后进行交易,交易价格为每根木头长度的乘积。原创 2024-05-06 10:30:56 · 152 阅读 · 0 评论 -
华为OD机试算法D卷:发广播
从stdin输入,共一行数据,表示二维数组的各行,用逗号分隔行。某地有N个广播站,站点之间有些有连接,有些没有。站点1和站点2直接有连接,站点3和其他的都没连接,所以开始至少需要给两个站点发送广播。然后,我们可以使用深度优先搜索(DFS)算法来遍历整个网络,找到所有连接的广播站。现在要发一条广播,问初始最少给几个广播站发送,才能保证所有的广播站都收到消息。给定一个N*N的二维数组matrix,数组的元素都是字符’0’或者’1’。在遍历过程中,我们需要记录已经访问过的广播站,以避免重复访问。原创 2024-05-06 10:24:37 · 152 阅读 · 0 评论 -
华为OD机试算法D卷:导师请吃火锅
我们可以定义一个二维数组dp[i][j]表示在第i秒时,手速为j的情况下,最多能吃到的刚好合适的菜的数量。你希望吃到最多的刚好合适的菜,但你的手速不够快,用m代表手速,每次下手捞菜后至少要过m秒才能再捞(每次只能捞一个)。接下来有n行,每行有两个数x,y代表第x秒下的菜过y秒才能变得刚好合适。第一行两个整数n,m,其中n代表往锅里下的菜的个数,m代表手速。首先,我们需要读取输入的n和m,以及每道菜的下锅时间和煮熟时间。输出一个整数代表用最合理的策略,最多能吃到刚好合适的菜的数量。原创 2024-05-06 10:16:00 · 232 阅读 · 0 评论 -
od机试算法(c++)测试用例执行计划
Tm}),每个用例对应了一个覆盖特性的集合,测试用例使用其ID作为。第一行输入为N和M,N表示特性的数量,M表示测试用例的数量,0 之后N行表示特性ID=1到特性ID=N的。在开展测试之前,需要制定测试用例的执行顺序,规则为:优先级大的用例先执行,如果存在优先级相同。再接下来M行表示测试用例ID=1到测试用例ID=M关联的特性的ID的列表。按照执行顺序(优先级从大到小)输出测试用例的ID,每行一个ID。下标进行标识,测试用例的优先级定义为其覆盖的特性的优先级之和。的用例,用例ID小的先执行。原创 2024-04-12 10:50:27 · 43 阅读 · 0 评论 -
华为OD机试算法D卷:求幸存数之和
给一个正整数列 nums,一个跳数jump,及幸存数量 left。运算过程为: 从索引为0的位置开始向后跳,中间跳过小个数字,命中索引为J+1的数字, 该数被敲出,并从该点起跳,以此类推,直到幸存left个数为止。然后返回幸存数之和。约束:1)0是第一个起跳点2)起跳点和命中点之间间隔jump个数字,已被敲出的数字不计入在内3)跳到末尾时无缝从头开始 (循环查找),并可以多次循环。4)若起始时 left>len(nums)则无需跳数处理过程。/**原创 2024-04-30 15:39:08 · 25 阅读 · 0 评论 -
华为OD机试算法D卷:项目排期
项目组共有N个开发人员,项目经理接到了M个独立的需求,每个需求的工作量不同,且每个需求只能由一个开发人员独立完成,不能多人合作。假定各个需求直接无任何先后依赖关系,请设计算法帮助项目经理进行工作安排,使整个项目能用最少的时间交付。原创 2024-04-30 15:37:08 · 9 阅读 · 0 评论 -
华为OD机试算法D卷:机场航班调度程序
XX市机场停放了多架飞机,每架飞机都有自己的航班号CA3385,CZ6678,SC6508等,航班号的前2个大写字母(或数字)代表航空公司的缩写, 后面4个数字代表航班信息。为保障航班的有序起飞,调度员首先按照航空公司的缩写(航班号前2个字母)对所有航班进行排序, 同一航空公司的航班再按照航班号的后4个数字进行排序最终获得安排好的航班的起飞顺序。请编写一段代码根据输入的航班号信息帮助调度员输出航班的起飞顺序。输入目前停留在该机场的航班号,输出为按照调度排序后输出的有序的航班号。原创 2024-04-30 15:00:27 · 8 阅读 · 0 评论 -
华为OD机试算法D卷:石头剪刀布游戏
石头剪刀布游戏有3种出拳形状: 石头、剪刀、布, 分别用字母 A,B,C表示游戏规则:1)出拳形状之间的胜负规则如下: A > B;B > C;C > A“>”左边一个字母,表示相对优势形状。右边一个字母,表示相对劣势形状。2) 当本场次中有且仅有一种出拳形状优于其它出拳形状,则该形状的玩家是胜利者。否则认为是平局。例如1 三个玩家出拳分别是 A,B.C,由于出现三方优势循环(即没有任何一方优于其它出拳者),判断为平局.例如2 三个玩家,出拳分别是 A,B。出拳A的获胜。原创 2024-04-30 10:03:50 · 34 阅读 · 0 评论 -
华为OD机试算法D卷:求最多可以派出多少支团队
用数组代表每个人的能力,一个比赛活动要求参赛团队的最低能力值为N,每个团队可以由1人或2人组成,且1个人只能参加1个团队,请计算出最多可以派出多少支符合要求的团队?原创 2024-04-30 10:01:10 · 5 阅读 · 0 评论 -
华为OD机试算法D卷:快递员的烦恼
快递公司每日早晨,给每位快递员推送需要送到客户手中的快递以及路线信息,快递员自己又查找了一些客户与客户之间的路线距离信息,请你依据这些信息,给快递员设计一条最短路径,告诉他最短路径的距离。注意:1.不限制快递包裹送到客户手中的顺序,但必须保证都送到客户手中2.用例保证一定存在投递站到每位客户之间的路线,但不保证客户与客户之间有路线,客户位置及投递站均允许多次经过3.所有快递送完后,快递员需回到投递站。原创 2024-04-30 09:58:49 · 46 阅读 · 0 评论 -
华为OD机试算法D卷:转盘寿司
寿司店周年庆,正在举办优惠活动回馈新老客户。寿司转盘上总共有n盘寿司,prices[i]是第i盘寿司的价格,如果客户选择了第i盘寿司,寿司店免费赠送客户距离,第i盘寿司最近的下一盘寿司i,前提是prices[j]< prices[i],如果没有满足条件的j,则不赠送寿司。每个价格的寿司都可无限供应。原创 2024-04-30 09:43:29 · 56 阅读 · 0 评论 -
华为OD机试算法D卷:小华最多能得到多少克黄金
小华按照地图去寻宝,地图上被划分成 m 行和 n 列的方格,横纵坐标范围分别是[0,n-1]和[0,m-1]。在横坐标和纵坐标的数位之和不大于k的方格中存在黄金 (每个方格中仅存在一克黄金),但横坐标和纵坐标之和大于k的方格存在危险不可进入。小华从入口(0,0)进入,任何时候只能向左,右,上,下四个方向移动一格。请问小华最多能获得多少克黄金?原创 2024-04-30 09:42:40 · 24 阅读 · 0 评论 -
华为OD机试算法D卷:高效货运
1.老李是货运公司承运人,老李的货车额定载货重量为wt2.现有两种货物,货物A单件重是为wa,单件运费利润为pa,货物B单件重量为wb,单件运费利润为pb3.老李每次发车时载货总重最刚好为货车额定载货重量wt,车上必须同时有货物A和货物B,货物A、B不可切割4.老李单车次满载运输可获得的最高利润是多少。原创 2024-04-30 09:27:51 · 107 阅读 · 0 评论 -
华为OD机试算法D卷:最大坐标值
整个游戏过程中,小明所处的坐标值依次为[0-6-5,1,1-6],最大坐标值为1。整个游戏过程中,小明所处的坐标值依次为[0,-5,-3],最大坐标值为0。幸运数为一个整数,如果某个指令正好和幸运数相等,则小明行进步数加1。指令为1,正好等于幸运数,前进1+1=2步,此时坐标值为-3;指令为-5,正好等于幸运数,后退5+1=6步,此时坐标值为-6。指令为3,正好和幸运数相等,前进3+1=4步;游戏开始前,站在坐标轴原点,此时坐标值为0;指令为0,既不前进也不后退,此时坐标值为1;原创 2024-04-30 09:26:55 · 266 阅读 · 0 评论 -
华为OD机试算法D卷:多段线数据压缩
下图中,每个方块代表一个像素,每个像素用其行号和列号表示为简化处理,多段线的走向只能是水平、竖直、斜向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-29 14:23:38 · 32 阅读 · 0 评论 -
华为OD机试算法D卷:贪吃的猴子
一只贪吃的猴子,来到一个果园,发现许多串香蕉排成一行,每串香蕉上有若干根香蕉。猴子获取香蕉,每次都只能从行的开头或者末尾获取,并且只能获取N次,求猴子最多能获取多少根香蕉。第一次获取香蕉,无论是从行的开头或者末尾获取,得到的香蕉根数目为1, 但是,从行末尾获取能获取到最优的策略,后面可以直接得到香蕉根数目6和3。第一次获取香蕉为行的开头,第二次获取为行的末尾,因此最终根数为4+3=7。输入输出示例仅供调试,后台判题数据一般不包含示例。全部获取所有的香蕉,因此最终根数为1+2+3=6。原创 2024-04-29 12:07:42 · 88 阅读 · 0 评论 -
华为OD机试算法D卷:火星文计算
已知火星人使用的运算符为#、$,其与地球人的等价公式如下:1、其中x、y是无符号整数2、地球人公式按C语言规则计算3、火星人公式中,#的优先级高于$,相同的运算符,按从左到右的顺序计算现有一段火星人的字符串报文,请你来翻译并计算结果。原创 2024-04-29 11:49:53 · 27 阅读 · 0 评论 -
华为OD机试算法D卷:抢7游戏
A、B两个人玩抢7游戏,游戏规则为A先报一个起始数字X(10 < 起始数字 < 10000),B报下一个数字Y( X - Y < 3),A再报一个数字Z(Y-Z原创 2024-04-29 11:48:07 · 57 阅读 · 3 评论 -
华为OD机试算法D卷:加密算法
有一种特殊的加密算法,明文为一段数字串,经过密码本查找转换,生成另一段密文数字串。规则如下:1.明文为一段数字串由0~9组成2.密码本为数字0~9组成的二维数组3.需要按明文串的数字顺序在密码本里找到同样的数字串密码本里的数字串是由相邻的单元格数字组成,上下和左右是相邻的,注意:对角线不相邻,同一个单元格的数字不能重复使用。4.每一位明文对应密文即为密码本中找到的单元格所在的行和列序号(序号从0开始)组成的两个数字。原创 2024-04-29 11:46:40 · 39 阅读 · 0 评论 -
华为OD机试算法D卷:执行任务赚积分
接下来N行,每行两个空格分隔的整数(SLA和V),SLA表示任务的最晚处理时间,V表示任务对应的积分。每个任务都有最晚处理时间限制和积分值,在最晚处理时间点之前处理完成任务才可获得对应的积分奖励。现有N个任务需要处理,同一时间只能处理一个任务,处理每个任务所需要的时间固定为1。所以在第1个时间单位内,选择处理有5个积分的任务,1-3时无任务处理。可用于处理任务的时间有限,请问在有限的时间内,可获得的最多积分。第一行为一个数N,表示有N个任务,1原创 2024-04-29 11:45:17 · 16 阅读 · 0 评论 -
华为OD机试算法D卷:高效货运
1.老李是货运公司承运人,老李的货车额定载货重量为wt2.现有两种货物,货物A单件重是为wa,单件运费利润为pa,货物B单件重量为wb,单件运费利润为pb3.老李每次发车时载货总重最刚好为货车额定载货重量wt,车上必须同时有货物A和货物B,货物A、B不可切割4.老李单车次满载运输可获得的最高利润是多少。原创 2024-04-29 11:43:21 · 6 阅读 · 0 评论 -
华为OD机试算法D卷:机器人仓库搬砖
机器人搬砖,一共有N堆砖存放在N个不同的仓库中,第i堆砖中有brick[i]块砖头,要求在8小时内搬完。机器人每小时能搬砖的数量取决于有多少能量格,机器人一个小时中只能在一个仓库中搬砖,机器人的能量格每小时补充一次且能量格只在这个小时有效, 为使得机人损耗最小化尽是减小每次补充的能量格数。为了保障在8小时内能完成搬砖任务,请计算每小时给机器人充能的最小能量格数。备注:1、无需考虑机器人补充能量格的耗时2、无需考虑机器人搬砖的耗时;原创 2024-04-29 11:42:03 · 27 阅读 · 0 评论 -
华为OD机试算法D卷:万能字符单词拼写
假如可以用chars中的字母拼写出words中的某个“单词”(字符串),那么我们就认为你掌握了这个单词。输出词汇表words中你掌握的所有单词的个数。注意:每次拼写时,chars中的每个字母和万能字符都只能使用一次。输出一个整数,表示词汇表words中你掌握的单词个数。有一个字符串数组words和一个字符串chars。可以拼写字符串"cat"、"bt"和"hat"可以拼写字符串"hello"和"world"第1行输入数组words的个数,记为N。可以拼写字符串"apple"和"car"原创 2024-04-29 11:39:48 · 10 阅读 · 0 评论 -
华为OD机试算法D卷:符号运算
给定一个表达式,求其分数计算结果表达式的限制如下:1.所有的输入数字为正整数(包括0)2.仅支持四则运算(+-*/)和括号3.结果为整数或分数分数必须化为最简格式(比如6,3/4,7/8,90/7)4.除数可能为0,如果遇到这种情况,直接输出"ERROR"5.输入和最终计算结果中的数字都不会超出整型范围用例的输入一定合法,不会出现括号不匹配的情况。原创 2024-04-29 11:37:50 · 14 阅读 · 1 评论 -
华为OD机试算法D卷:分配土地
从前有个村庄,村民们喜欢在各种田地上插上小旗子,旗子上标识了各种不同的数字。某天集体村民决定将覆盖相同数字的最小矩阵形的土地的分配给为村里做出巨大贡献的村民,请问,此次分配士地,做出贡献的村民中最大会分配多大面积?原创 2024-04-29 11:36:19 · 9 阅读 · 0 评论