华为刷题笔记
文章平均质量分 63
该专栏题目包含两部分:
100 分值部分题目
200 分值部分题目
如果大家有任何的意见或者建议,都可以留言,我能帮助解决的一定尽力去解决
坚定的小辣鸡在努力
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
华为刷题笔记--题目索引
所有题目都会陆续更新,订阅防丢失。100分值部分题目。200分值部分题目。原创 2024-11-18 10:38:38 · 1605 阅读 · 0 评论
-
华为OD机试-- 数大雁 E100
一群大雁往南飞,给定一个字符串记录地面上的游客听到的大雁叫声,请给出叫声最少由几只大雁发出。大雁发出的完整叫声为”quack“,因为有多只大雁同一时间嘎嘎作响,所以字符串中可能会混合多个”quack”大雁会依次完整发出”quack”,即字符串中q,u,a,c,k这5个字母按顺序完整存在才能计数为一只大雁如果不完整或者没有按顺序则不予计数。如果字符串不是由q,u,a,ck字符组合而成,或者没有找到一只大雁,请返回-1一个字符串,包含大雁quack的叫声。1<=字符串长度<=1000,字符串中的字符只有。原创 2025-01-20 13:35:54 · 520 阅读 · 2 评论 -
智能成绩表 E100
小明来到某学校当老师,需要将学生按考试总分或单科分数进行排名,你能帮帮他吗?第 1 行 输入两个整数,学生人数n和科目数量m。0原创 2025-01-07 10:55:23 · 486 阅读 · 0 评论 -
华为OD机试-- 高矮个子排队 E100
我们现在希望小朋友排队,以“高“矮”“高”“矮"顺序排列,每一个“高”位置的小朋友要比相邻的位置高或者相等;虽然也满足“高”“矮”“"高”“矮”顺序排列,但小朋友们的移动距离大,所以不是最优结果。备注:4(高)3(矮)7(高)5(矮)8(高),输出结果为最小移动距离,只有5和7交换了位置,移动距离都是1。第二位小朋友移到第三位小朋友后面,移动距离为1,若移动到第四位小朋友后面,移动距离为2;要求小朋友们移动的距离和最小,第一个从“高”位开始排,输出最小移动距离即可。给出的答案是错误的,最佳答案应该是。原创 2025-01-03 13:44:04 · 477 阅读 · 0 评论 -
华为OD机试--猜数字 E100
一个人设定一组四码的数字作为谜底,另一方猜,每猜一个数,出数者就要根据这个数字给出提示,提示以XAYB形式呈现,直到猜中位置。其中X表示位置正确的数的个数(数字正确且位置正确),而Y表示数字正确而位置不对的数的个数。例如,当谜底为8123,而猜谜者猜1052时,出题者必须提示0A2B.例如,当谜底为5637,而猜谜者才4931时,出题者必须提示1A0B.当前已知N组猜谜者猜的数字与提示,如果答案确定,请输出答案,不确定则输出NA。第一行输入一个正整数,0N100接下来N。原创 2024-11-18 13:12:59 · 605 阅读 · 0 评论 -
华为ID机试 -- 分糖果 E100
小明从糖果盒中随意抓一把糖果,每次小明会取出一半的糖果分给同学们。当糖果不能 平均分配只时,小明可以选择从糖果盒中(假设盒中糖果足够)取出一个糖果或放回一个糖果。小明最少需要多少次(取出、放回和平均分配均记一次),能将手中糖果分至只剩一颗。抓取的糖果数(原创 2024-11-18 11:42:00 · 811 阅读 · 0 评论 -
华为OD机试-日志采集 E100
如果第1个时刻上报,获得积分50。如果第2个时刻上报,最多上报100条,前50条延迟上报1s,每条扣除1分,共获得积分为100-50=50。日志是按行生成,每行记做一条,由采集系统分批上报。T5时刻上报,因为已经超了100条限制,所以只能上报100条,得-23分。给出日志序列,根据该规则,计算首次上报能获得的最多积分数。2.每条日志每延迟上报1秒,扣1分。如果上报太晚,会降低用户的体验;1.每成功上报一条日志,奖励1分。T2 时刻上报得98分,最大。T3时刻上报得37分,最大。T1 时刻上报得1分。原创 2024-11-17 00:51:09 · 1141 阅读 · 0 评论 -
英文输入法 E100
主管期望你来实现英文输入法单词联想功能。需求如下:依据用户输入的单词前缀,从已输入的英文语句中联想出用户想输入的单词,按字典序输出联想到的单词序列,如果联想不到,请输出用户输入的单词前缀。注意:英文单词联想时,区分大小写缩略形式如”don’t”,判定为两个单词,”don”和”t”输出的单词序列,不能有重复单词,且只能是英文单词,不能有标点符号输入为两行。首行输入一段由英文单词word和标点符号组成的语句str;接下来一行为一个英文单词前缀pre。原创 2024-11-15 15:51:04 · 333 阅读 · 0 评论 -
贪心的商人 E100
商人经营一家店铺,有number种商品,由于仓库限制每件商品的最大持有数量是item[index],每种商品的价格是item_price[item_index][day]通过对商品的买进和卖出获取利润,请给出商人在days天内能获取的最大的利润。注:同-件商品可以反复买进和卖出备注针对第一件商品,商人在第一天的价格是itemprice[0][0]=1时买入item[0]件,在第三天item_price[0][2]=3的时候卖出,获利最大是8;·针对第二件商品,不进行交易,获利最大时0;原创 2024-11-15 15:19:49 · 394 阅读 · 0 评论 -
流浪地球 E100
流浪地球计划在赤道上均匀部署了N个转向发动机,按位置顺序编号为0∽N−1。初始状态下所有的发动机都是未启动状态;发动机起动的方式分为“手动启动"和“关联启动"两种方式;如果在时刻1一个发动机被启动,下一个时刻2与之相邻的两个发动机就会被“关联启动”;如果准备启动某个发动机时,它已经被启动了,则什么都不用做;发动机0与发动机0∽N是相邻;地球联合政府准备挑选某些发动机在某些时刻进行”手动启动”,当然最终所有的发动机都会被启动。哪些发动机最晚被启动呢?第一行两个数字N和E。原创 2024-11-15 01:37:59 · 1158 阅读 · 0 评论 -
光伏场地建设规划 E100
祖国西北部有一片大片荒地,其中零星的分布着一些湖泊,保护区,矿区;整体上常年光照良好,但是也有一些地区光照不太好。某电力公司希望在这里建设多个光伏电站,生产清洁能源,对每平方公里的土地进行了发电评估,其中不能建设的区域发电量为0kw,可以发电的区域根据光照,地形等给出了每平方公里年发电量x千瓦。我们希望能够找到其中集中的矩形区域建设电站,能够获得良好的收益。第一行输入为调研的地区长,宽,以及准备建设的电站【长宽相等,为正方形】的边长,最低要求的发电量,之后每行为调研区域每平方公里的发电量。原创 2024-11-14 23:54:03 · 683 阅读 · 0 评论 -
BOSS的收入 E100
一个XX产品行销总公司,只有一个 boss,其有若干一级分销,一级分销又有若干二级分销,每个分销只有唯一的上级分销。规定,每个月,下级分销需要将自己的总收入(自已的+下级上交的)每满100元上交15元给自己的上级现给出一组分销的关系,和每个分销的收入,请找出boss并计算出这个boss的收入。比如:收入100元,上交15元:收入199元(99元不够100),上交15元:。收入200元,上交30元。原创 2024-11-12 13:31:58 · 536 阅读 · 0 评论 -
斗地主之顺子 E100
在斗地主只扑克牌游戏中,扑克牌由小到大的顺序为: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}都是有效的顺子;原创 2024-11-12 02:13:09 · 910 阅读 · 0 评论 -
组装最大可靠性设备
一个设备由N种类型元器件组成(每种类型元器件只需要一个,类型type编号从0~N-1),每个元器件均有可靠性属性,可靠性越高的器件其价格price越贵。而设备的可靠性由组成设备的所有器件中可靠性最低的器件决定。给定预算S,购买N种元器件(每种类型元器件都需要购买一个),在不超过预算的情况下,请给出能够组成的设备的最大可靠性。S N// S总的预算,N元器件的种类total// 元器件的总数,每种型号的元器件可以有多种;此后有total行具体器件的数据。原创 2024-11-10 15:52:56 · 278 阅读 · 0 评论 -
任务最优调度
给定一个正整数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。请计算执行完所有任务所需的最短时间。第一行记录一个用半角逗号分隔的数组,数组长度不超过1000,数组元素的值不超过1000第二行记录任务冷却时间,N为正整数,N原创 2024-11-10 01:42:25 · 384 阅读 · 0 评论 -
华为OD机试真题-书籍叠放
书籍的长、宽都是整数对应 (,w)。如果书 A的长宽度都比 B 长宽大时,则允许将 B 排列放在 A 上面。现在有一组规格的书籍,书籍放时要求书籍不能做旋转,请计算最多能有多少个规格书籍能叠放在一起。输入描述输入:books =[[20,16],[15,11],[10,10],[9,10]]说明:总共4本书籍,第一本长度为20宽度为16;第二本书长度为15宽度为11,依次类推,最后一本书长度为9宽度为10。输出描述输出:3。原创 2024-11-10 00:56:04 · 362 阅读 · 0 评论 -
华为OD机试真题-仿LISP计算
LISP语言唯一的语法就是括号要配对。形如(OP P1 P2 …),括号内元素由单个空格分割。其中第一个元素 OP 为操作符,后续元素均为其参数,参数个数取决于操作符类型。注意:参数 P1,P2 也有可能是另外一个嵌套的 (OP P1 P2…),当前 OP 类型为 add/sub/mul/div(全小写),分别代表整数的加减乘除法,简单起见,所有 OP 参数个数均为 2。举例:输入:(mul 3-7)输出:-21输入:(add 1 2)输出:3。原创 2024-11-10 00:24:21 · 537 阅读 · 0 评论 -
华为OD机试真题-矩形绘制
实现一个简单的绘图模块,绘图模块仅支持矩形的绘制和擦除当新绘制的矩形与之前的图形重善时,对图形取并集当新擦除的矩形与之前的图形重善时,对图形取差集给定一系列矩形的绘制和擦除操作,计算最终图形的面积。下面给出示例1和示例2的图示两步绘制的矩形如左侧所示,取并集后得到的图形如右侧所示第一步绘制的矩形在左侧用实线表示,第二步擦除的矩形在左侧用虚线表示,取差集后得到图像如右侧所示标为整数,且数据范围为[-100,100],用例保证坐标有效输出最终图形的面积示例1输入2d 0 2 2 0输出7。原创 2024-11-09 23:27:07 · 667 阅读 · 0 评论 -
Linux发行版的数量
Linux操作系统有多个发行版,distrowatch.com提供了各个发行版的资料。这些发行版互相存在关联,例如Ubuntu基于Debian开发,而Mint又基于Ubuntu开发,那么我们认为Mint同Debian也存在关联。发行版集是一个或多个相关存在关联的操作系统发行版,集合内不包含没有关联的发行版。原创 2024-11-09 18:29:51 · 368 阅读 · 0 评论 -
华为OD机试真题-找最小数
给一个正整数NUM1,计算出新正整数NUM2,NUM2为NUM1中移除N位数字后的结果,需要使得NUM2的值最小。1.输入的第一行为一个字符串,字符串由0-9字符组成,记录正整数NUM1,NUM1长度小于32.2.输入的第二行为需要移除的数字的个数,小于NUM1长度。输出一个数字字符串,记录最小值 NUM2.输入26153714输出131说明。原创 2024-11-09 18:05:01 · 457 阅读 · 0 评论 -
最佳种树距离
按照环保公司要求,小明需要在沙化严重的地区进行植树防沙工作,初步目标是种植一条直线的树带。由于有些区域目前不适合种植树木,所以只能在一些可以种植的点来种植树木。在树苗有限的情况下,要达到最佳效果,就要尽量散开种植,不同树苗之间的最小间距要尽量大。给你一个适合种情树木的点坐标和一个树苗的数量,请帮小明选择一个 最佳的最小种植间距。原创 2024-11-09 17:42:45 · 493 阅读 · 0 评论 -
寻找最优的路测线路
评估一个网络的信号质量,其中一个做法是将网络划分为栅格,然后对每个栅格的信号质量计算。路测的时候,希望选择一条信号最好的路线(彼此相连的栅格集合)进行演示。现给出R行C列的整数数组Cov,每个单元格的数值S即为该栅格的信号质量(已归一化,无单位,值越大信号越好)。要求从[0, 0]到[R-1, C-1]设计一条最优路测路线。返回该路线得分。规则:路测路线可以上下左右四个方向,不能对角。路线的评分是以路线上信号最差的栅格为准的,例如路径 8→4→5→9的值为 4,该线路评分为4。原创 2024-11-09 17:09:18 · 442 阅读 · 0 评论 -
华为OD机试真题-最佳对手
游戏里面,队伍通过匹配实力相近的对手进行对战。但是如果匹配的队伍实力相差太大,对于双方游戏体验都不会太好。给定n个队伍的实力值,对其进行两两实力匹配,两支队伍实例差距在允许的最大差距d内,则可以匹配。要求在匹配队伍最多的情况下匹配出的各组实力差距的总和最小。第一行:nd,分别表示:队伍个数,允许的最大实力差距2≤n≤ 500≤d≤ 100第二行:n个队伍的实力值空格分割匹配后,各组对战的实力差值的总和。若没有队伍可以匹配,则输出-1。示例1输入6 30输出57说明。原创 2024-11-08 00:05:32 · 463 阅读 · 0 评论 -
华为-数字排列
注意9可以当6使用,所以可以构成的数字按从小到大排序为:3,6,7,8,9,36,37,38,39,63,6768,73,76,78,79,83…(省略后面的数字)故第9个为39。可以构成的数字按 从小到大排序为:1,4,7,8,14,17,18,41,47,48,71,74,78,81,84,87,147,148,178(省略后面的数字),故第8个为41。输出为这几个数字可拼成的数字从小大大排列位于第 N(N为输入数字中最大的数字)位置的数字如果输入的数字不在范围内或者有重复,则输出-1。原创 2024-11-07 19:01:32 · 226 阅读 · 0 评论 -
华为OD机试真题-任务处理
在某个项目中有多个任务(用 tasks 数组表示)需要您进行处理,其中tasksisiei,你可以在si原创 2024-11-07 13:28:20 · 726 阅读 · 0 评论 -
MELON的难题
MELON 有一堆精美的雨花石(数量为n,重量各异),准备送给S和W。MELON希望送给俩人的雨花石重量一致,请你设计一个程序,帮MELON确认是否能将雨花石平均分配。第1行输入为雨花石个数:n,0原创 2024-11-07 12:57:32 · 410 阅读 · 0 评论 -
树状结构查询
通常使用多行的节点、 父节点只 表示一棵树,比如输入一个节点之后,请打印出来树中他的所有下层节点第一行输入行数,下面是多行数据,每行以空格区分节点和父节点接着是查询节点输出查询节点的所有下层节点。以 字典序排序Q补充说明树中的节点是唯一的,不会出现两个节点,是同一个名字输入输出def说明。原创 2024-11-06 21:53:37 · 200 阅读 · 0 评论 -
观看文艺汇演问题
为了庆祝中国共产党成立 100 周年,某公园将举行多场文艺表演,很多演出都是同时进行。一个人只能同时观看一场演出,且不能迟到早退。由于演出分布在 不同的只演出场地,所以连续观看的演出最少有 15 分钟的时间间隔。小明是一个狂热的文艺迷,想观看尽可能多的演出。现给出演出时间表,请帮小明计算他最多能观看几场演出。第一行为一个数N,表示演出场数接下来N行,每行有被空格分割的整数,第一个整数T表示演出的开始时间,第二个整数L表示演出的持续时间T和L的单位为分钟0≤T≤14400原创 2024-11-06 21:30:38 · 411 阅读 · 0 评论 -
九宫格按键输入
题目描述九宫格按键输入,有英文和数字两个模式,默认是数字模式,数字模式直接输出数字,英文模式连续按同一个按键会依次出现这个按键上的字母,如果输入""或者其他字符,则循环中断,输出此时停留的字母。数字和字母的对应关系如下,注意0只对应空格:输入一串按键,要求输出屏幕显示1.#用于切换模式,默认是数字模式,执行 #后切换为英文模式;2./表示延迟,例如在英文模式下,输入 22/222,显示为 bc,数字模式下/没有效果,3.英文模式下,多次按同一键,例如输入 22222,显示为b;输入描述。原创 2024-11-06 19:01:53 · 875 阅读 · 0 评论 -
华为OD机试真题-水仙花数
所谓 水仙花数,是指一个n位的正整数,其各位数字的n次方和等于该数本身。例如153是水仙花数,153是一个3位数,并且153135333。第一行输入一个整数n,表示一个n位的正整数。n在3到7之间,包含3和7。第二行输入一个整数m,表示需要返回第m个水仙花数。返回长度是n的第m个水仙花数。个数从0开始编号。若m大于水仙花数的个数,返回最后一个水仙花数和m的乘积。若输入不合法,返回-1。输入30输出153说明153是第一个水仙花数.输入91。原创 2024-11-06 18:16:29 · 854 阅读 · 0 评论 -
华为OD机试真题-解压报文
为了提升数据传输的效率,会对传输的报文进行压缩处理。输入一个压缩后的报文,请返回它解压后的原始报文。压缩规则:n[str],表示方括号内部的 str 正好重复 n 次。注意 n 为正整数(0 < n <= 100),str只包含小写英文字母,不考虑异常情况。输入描述:输入压缩后的报文:1)不考虑无效的输入,报文没有额外的空格,方括号总是符合格式要求的;2)原始报文不包含数字,所有的数字只表示重复的次数 n ,例如不会出现像 5b 或 3[8] 的输入;原创 2024-11-06 17:52:07 · 954 阅读 · 0 评论 -
计算网络信号
网络信号经过传递会逐层衰减,且遇到阻隔物无法直接穿透,在此情况下需要计算某个位置的网络信号值。注意:网络信号可以绕过阻隔物[m][n]的二维数组代表网格地图,array[i][j]=0代表i行j列是空旷位置;array[i][j]=x(x为正整数)代表i行j列是信号源,信号强度是x;array[i][j]=-1代表i行j列是阻隔物。信号源只有1个,阻隔物可能有0个或多个网络信号衰减是上下左右相邻的网格衰减1现要求输出对应位置的网络信号值输入为三行,第一行为m n,代表输入是一个m*n的数组。原创 2024-11-06 15:24:16 · 1195 阅读 · 0 评论 -
华为OD机试真题-文本统计分析
有一个文件, 包含以一定规则写作的文本, 请统计文件中包含的文本数量规则如下文本以";“分隔,最后一条可以没有”;",但空文本不能算语句,比如"COMMAND A;;"只能算一条语句.注意, 无字符/空白字符/制表符都算作"空"文本文本可以跨行, 比如下面, 是一条文本, 而不是三条。原创 2024-11-06 15:17:29 · 523 阅读 · 0 评论 -
华为OD机试真题-推荐多样性
推荐多样性需要从多个列表中选择元素,一次性要返回N屏数据(窗口数量),每屏展示K个元素(窗口大小),选择策略:各个列表元素需要做穿插处理,即先从第一个列表中为每屏选择一个元素,再从第二个列表中为每屏选择一个元素,依次类推每个列表的元素尽量均分为N份,如果不够N个,也要全部分配完,参考样例图:(1)从第一个列表中选择4条0 1 2 3,分别放到4个窗口中(2)从第二个列表中选择4条10 11 12 13,分别放到4个窗口中(3)从第三个列表中选择4条20 21 22 23,分别放到4个窗口中。原创 2024-11-06 12:05:00 · 448 阅读 · 0 评论 -
华为OD机试真题-简易内存池
请实现一个简易内存池,根据请求命令完成内存分配和释放。内存池支持两种操作命令,REQUEST和RELEASE,其格式首行为整数 N,表示操作命令的个数,取值范围:0<N<= 100。接下来的N行,每行将给出一个操作命令,操作命令和参数之间用“=”分割。请求分配指定大小内存时,如果分配成功,返回分配到的内存首地址;如果内存不足,或指定的大小为0,则输出error释放掉之前分配的内存时,释放成功无需输出,如果释放不存在的首地址则输出error。输入2REQUEST=10REQUEST=20。原创 2024-11-05 13:07:59 · 411 阅读 · 0 评论 -
幼儿园篮球游戏
幼儿园里有一个放倒的圆桶,它是一个 线性结构,允许在桶的右边将篮球放入,可以在桶的左边和右边将篮球取出。每个篮球有单独的编号,老师可以连续放入一个或多个篮球,小朋友可以在桶左边或右边将篮球取出,当桶只有一个篮球的情况下,必须从左边取出。如老师按顺序放入1、2、3、4、5共有5 个编号的篮球,那么小朋友可以依次取出编号为1、2、3、4、5或者 3、1、2.4、5 编号的篮球,无法取出 5、1、3、2、4 编号的篮球其中 3、1、2、4、5 的取出场景为:->连续放入1、2、3号->从右边取出3号。原创 2024-11-05 00:48:21 · 572 阅读 · 0 评论 -
华为OD机试真题-跳格子三
小明和朋友们一起玩跳格子游戏,每个格子上有特定的分数,score[] = [1 -1 -6 7 -17 7],从起点score[0]开始,每次最大跳的步长为k,请你返回小明跳到终点score[n-1]时,能得到的最大得分。注:格子的总长度和步长的区间在 [1, 100000];每个格子的分数在[-10000, 10000]区间中;输入描述:6 // 第一行输入总的格子数量1 -1 -6 7 -17 7 // 第二行输入每个格子的分数score[]2 // 第三行输入最大跳的步长k。原创 2024-11-05 00:33:29 · 309 阅读 · 0 评论 -
工号不够用了怎么办
3020年,空间通信集团的员工人数数量突破20亿,现有工号系统不够用的窘境。现在,请你负责调研新工号系统。继承历史传统,新工号系统由小写英文字母(a-z)和数字(0-9)两部分构成。新工号分一段英文字符开头,之后跟着一段数字,例如"aaaahw0001",“a12345”,“abcd1”,“a00”。注意新工号数字不能全字母或者数字,允许数字部分有前导0或者全为0。但是过长的工号会增加同事们的记忆成本,现给出新工号至少需要分配的人数X和新工号中字母的长度Y,求新工号中数字的最短长度Z。原创 2024-11-04 23:36:38 · 823 阅读 · 0 评论 -
寻找符合要求的最长子串
给定一个字符串s,找出这样一个子串:1)该子串中的任意一个字符最多出现2次;2)该子串不包含指定某个字符;请你找出满足该条件的最长子串的长度。输入描述:第一行为要求不包含的指定字符,为单个字符,取值范围0−9a−zA−Z第二行为字符串s,每个字符范围0−9a−zA−Z,长度范围110000一个整数,满足条件的最长子串的长度;原创 2024-11-04 23:15:52 · 978 阅读 · 0 评论 -
投骰子问题
骰子是一个立方体,每个面一个数字,初始为左1,右2,前3(观察者方向),后4,上5,下6,用123456表示这个状态,放置到平面上,可以向左翻转(用L表示向左翻转1次),可以向右翻转(用R表示向右翻转1次),可以向前翻转(用F表示向前翻转1次),可以向后翻转(用B表示向右翻转1次),可以逆时针旋转(用A表示逆时针旋转90度),可以顺时针旋转(用C表示逆时针旋转90度),现从初始状态开始,根据输入的动作序列,计算得到最终的状态。初始状态为:123456。原创 2024-11-04 22:34:12 · 303 阅读 · 0 评论
分享