- 博客(109)
- 收藏
- 关注
原创 【华为OD统一考试B卷 】最长方连续方波信号 python
输入信号串中有三个信号:0010101010110(第一个信号段) 0001010(第二个信号段) 010(第三个信号段)第一个信号虽然有交替的方波信号段,但出现了11部分的连续高位,不算完全连续交替方波,在剩下的连续方波信号串中01010最长。一个完整的信号一定以0开始然后以0结尾,即010是一个完整信号,但101,1010,0101不是。输出最长的完全连续交替方波信号串: 01010 若不存在完全连续交替方波信号串,输出 -1。输入的一串方波信号是由一个或多个完整信号组成。
2023-07-13 23:36:59 184
原创 【华为OD统一考试B卷 】 叠积木 python
小橙想把这堆积木叠成一面墙,墙的每层可以放一个积木,也可以将两个积木拼接起来,要求每层的长度相同。输入为一行,为各个积木的长度,数字为正整数,并由空格分隔。解释:以 6 为底的墙,第一层为 6 ,第二层为 3 + 3,第三层 3 + 3。输出一个数字,为墙的最大层数,如果无法按要求叠成每层长度一致的墙,则输出-1。背包问题,首先计算和sum,排序,选取最大的maxVal作为墙的第一层,有一堆长方体积木,它们的长度和宽度都相同,但长度不一。给定积木的长度,以空格分隔,例如:3 6 6 3。
2023-07-13 23:34:21 92
原创 【华为OD统一考试B卷 】计算误码率 python
移动通信 网络中的误码率主要是指比特误码率,其计算公式如下:比特误码率=错误比特数/传输总比特数。为了简单,我们使用字符串来标识通信的信息,一个字符错误了,就认为出现了一个误码输入一个标准的字符串,和一个传输后的字符串,计算误码率字符串会被压缩。用例会保证两个输入字符串解压后长度一致,解压前的长度不一定一致每个生成后的字符串长度
2023-07-13 23:26:07 86
转载 【华为OD统一考试B卷 】MELON的难题 python
1.01背包问题,先看雨花石重量能否平分,背包容量为sum/2,即检查背包装满时,均分时只能分别为1,2,需要拿出重量为1和2的两块雨花石,所以输出2。MELON有一堆精美的雨花石(数量为n,重量各异),准备送给S和W。2.如果重量可以平分,再把每块石头价值视为1,求最大价值,即最多块数。如果可以均分,从当前雨花石中最少拿出几块,可以使两堆的重量相等;MELON希望送给俩人的雨花石重量一致,请你设计一个程序,第1行输入为雨花石个数:n, 0 < n < 31。第二行代表4颗雨花石重量分别为1、1、2、2。
2023-07-13 23:23:37 91
原创 【华为OD统一考试B卷 】 阿里巴巴找黄金宝箱(IV) python
贫如洗的椎夫阿里巴巴在去砍柴的路上,无意中发现了强盗集团的藏宝地,藏宝地有编号从0-N的子,每个箱子上面有一人数字,箱了排列成一个环,编号最大的箱子的下一个是编号为0的箱子。请输出每个箱了贴的数字之后的第一个比它大的数,如果不存在则输出-1。第一个2的下一个更大的数是5数字5找不到下一个更大的数:第二个2的下一个最大的数需要循环搜索,结果也是 5。输入一个数字字串,数字之间使用逗号分隔,例如: 1,2,3,1。下一个大的数列表,以逗号分隔,例如: 2,3,6,-1,6。108 阿里巴巴找黄金宝箱(IV)
2023-07-13 23:21:17 62
原创 【华为OD统一考试B卷 】二叉树中序遍历 python
根据给定的二叉树结构描述字符串,输出该二叉树按照中序遍历结果字符串。中序遍历顺序为:左子树,根结点,右子树。由大小写字母、左右大括号、逗号组成的字符串:字母代表一个节点值,左右括号内包含该节点的子节点。左右子节点使用逗号分隔,逗号前为空则表示左子节点为空,没有逗号则表示右子节点为空。就是先遍历根,再遍历左孩子,最后遍历右孩子;输出一个字符串为二叉树中序遍历各节点值的拼接结果。先序遍历:遍历顺序规则为【根左右】中序遍历:遍历顺序规则为【左根右】后序遍历:遍历顺序规则为【左右根】二叉树节点数最大不超过100。
2023-07-13 23:19:25 68
原创 【华为OD统一考试B卷 】二维伞的雨滴效应 python
普通的伞在二维平面世界中,左右两侧均有一条边,而两侧伞边最下面各有一个伞坠子,雨滴落到伞面,逐步流到伞坠处,会将伞坠的信息携带并落到地面,随着日积月累,地面会呈现伞坠的信息。2、同时请将此序列构成的伞状效应携带到地面的数字信息输出来(左边伞坠信息,右边伞坠信息,详细参考示例图地面上数字),若此树不存在左或右扇坠,则对应位置返回0。一个通过空格分割的整数序列字符串,数组不含0,数组成员至少1个,输入的数组的任意两个数字都互不相同,最多1000个正整数,正整数值范围1~655350。
2023-07-13 23:15:56 103
原创 【华为OD统一考试B卷 】数字序列比大小 python
A,B两个人玩一个数字比大小的游戏,在游戏前,两个人会拿到相同长度的两个数字序列,两个数字序列不相同的且其中的数字是随机的。A,B各自从数字序列中挑选出一个数字进行大小比较,赢的人得1分,输的人扣1分,相等则各自的分数不变。1.这里要求计算A可能赢B的最大分数,不妨假设,A知道B的数字序列,且总是B先挑选数字并明示。输入数据的第1个数字表示数字序列的长度N,后面紧跟着两个长度为N的数字序列,输入数据第1个数字表示数字序列长度为3,后面紧跟着两个长度为3的数字序列。A可以赢的最大分数是3。
2023-07-13 23:14:04 68
原创 【华为OD统一考试B卷 】 树状结构查询 python
1:比较简单的一个树相关的题目,首先按照给定的信息构造一个树结构map。第一行输入行数,下面是多行数据,每行以空格区分节点和父节点。树中的节点是唯一的,不会出现两个节点,是同一个名字。输入一个节点之后,请打印出来树中他的所有下层节点。通常使用多行的节点、父节点表示一棵树,比如。输出查询节点的所有下层节点。2:然后遍历输出即可。
2023-07-13 23:05:26 62
原创 【华为OD统一考试B卷 】人气最高的店铺 python
第2到n+1行,每行为小写逗号分割的两个整数p,q,表示市民的意向投票情况,其中每行的第一个整数p表示该市民意向投票给p号店铺,第二个整数q表示其改投1号店铺所需给予的q元购物补贴,1
2023-07-13 23:02:42 85
原创 【华为OD统一考试B卷 】采样过滤 python
需要通过一个算法过滤掉不正确的采样值,不同工具的故意模式存在差异,算法的各关门限会根据工具类型做相应的调整。故障确认周期数和故障次数门限分别为M和T,故障恢复周期数为P。在做物理实验时,为了计算物体移动的速率,通过相机等工具周期性的采样物体移动距离。在M个周期内,采样数据为错误值的次数为T(次数可以不连续),则工具故障。S[i]-S[i-1]>=10,即为错误值。产生故障后的P个周期内,采样数据一直为正常值,则故障恢复。给定一段周期的采样数据列表S,计算正常值的最长连续周期。S[i]
2023-07-13 22:59:55 53
原创 【华为OD统一考试B卷 】跳格子2 python
如果偷窃了最后一间房屋,则不能偷窃第一间房屋,因此偷窃房屋的范围是第二间房屋到最后一间房屋。小明和朋友玩跳格子游戏,有 n 个连续格子组成的圆圈,每个格子有不同的分数,小朋友可以选择从任意格子起跳,但是不能跳连续的格子,不能回头跳,也不能超过一圈:给定一个代表每个格子得分的非负整数数组,计算能够得到的最高分数。如果只有一间房屋,则偷窃该房屋,可以偷窃到最高总金额。如果只有两间房屋,则由于两间房屋相邻,不能同时偷窃,只能偷窃其中的一间房屋,因此选择其中金额较高的房屋进行偷窃,可以偷窃到最高总金额。
2023-07-13 22:55:00 71
原创 【华为OD统一考试B卷 】分积木 python
哥哥Solo负责分配,弟弟koko要求两个人获得的积木总重量“相等”(根据Koko的逻辑),个数可以不同,不然就会哭,但koko只会先将两个数转成二进制再进行加法,而且总会忘记进位(每个进位都忘记)。右移 各二进位全部右移若干位,对无符号数,高位补0,有符号数,各编译器处理方法不一样,有的补符号位(算术右移),有的补0(逻辑右移)Solo和koko是两兄弟,妈妈给了他们一大堆积木,每块积木上都有自己的重量。1:明显出题想偷懒,这不是和分苹果是一模一样的逻辑,就是描述不一样了。~ 取反 0变1,1变0。
2023-07-13 22:26:57 53
原创 【华为OD统一考试B卷 】跳格子 python
总共有三个格子[0,1,2],跳完0个格子后第1个格子就开启了,跳到第0个格子后第2个格子也被开启了,按照0->1->2或者0->2->1的顺序都可以跳完所有的格子。总共4个格子[0,1,2,3],格子1和格子3没有前置条件所以默认开启,格子1可以开启格子0和格子2,所以跳到格子1之后就可以开启所有的格子,因此可以跳完所有格子。跳完第0个格子可以开启格子4,跳完格子4可以开启格子3,跳完格子3可以开启格子2,跳完格子2可以开启格子1,按照0->4->3->2->1这样就跳完所有的格子。
2023-07-13 22:24:25 44
原创 【华为OD统一考试B卷 】最佳植树距离 python
小明在直线的公路上种树,现在给定可以种树的坑位的数量和位置,以及需要种多少棵树苗,问树苗之间的最小间距是多少时,可以保证种的最均匀(两棵树苗之间的最小间距最大)?3棵树苗分别种植在1,7,13位置的坑位时,树苗种植的最均匀,最小间距为6。示例1 输入输出示例仅供调试,后台判题数据一般不包含示例。第三行:需要种植树苗的数量。
2023-07-13 22:21:35 82
原创 【华为OD统一考试B卷 】评论转换输出 python
嵌套级别为1的评论是"hello test one”,嵌套级别为2的评论是"ok bvetwo",嵌套级别为3的评论为"a"。然后是打印n行,第i(1
2023-07-13 22:19:28 40
原创 【华为OD统一考试B卷 】找出两个整数数组中同时出现的整数 python
两整数数组中同时出现的整数为-12、3、6、8、11,其中同时出现次数为1的整数为-1,2,3.6(升序排序),同时出现次数为3的整数为8,11(升序排序),先升序输出出现次数为1的整数,再升序输出出现次数为3的整数。第一行为第一个整数数组,第二行为第二个整数数组,每行数中整数与整数之间以英文号分,整数的取值范用为200,2001,数组长度的范用为[1,10000]之间的整数。两个整数数组没有同时出现的整数,输出NULL。出现次数:该出现次数下的整数升序排序的结果。2.没有同时出现的整数时,输出NULL。
2023-07-13 22:16:56 69
原创 【华为OD统一考试B卷 】跳房子2 python
跳房子的过程中,如果有踩线等违规行为会结束当前回合,甚至可能倒退几步.假设房子的总格数是count,小红每回合可能连续跳的步数都放在数组steps中,请问数组中是否有一种步数的组合,可以让小红三个回合跳到最后一格?跳房子,也叫跳飞机,是一种世界性的儿童游戏游戏参与者需要分多个回合按顺序跳到第1格直到房子的最后一格,然后获得一次选房子的机会,直到所有房子被选完,房子最多的人获胜。1:从一大段背景中找出有用的信息:从给定的数组中,以任意组合的方式(保证三个回合跳到最后一格),最终等于count即可。
2023-07-13 22:14:02 85
原创 【华为OD统一考试B卷 】猜密码 python
2、输出的密码数字要按照从小到大的顺序排列,密码组合需要按照字母顺序,从小到大的顺序排序。可能的密码组合,每种组合显示成一行,每个组合内部的数字以半角逗号分隔,从小到大的顺序排列。只记得密码都是数字,而且所有数字都是不重复的。3、输出的每一个组合的数字的数量要大于等于密码最小数字数量;1、输入的第一行是可能的密码数字列表,数字间以半角逗号分隔。1、输出的组合都是从可选的数字范围中选取的,且不能重复;4、如果可能的组合为空,则返回“None”2、输入的第二行是密码最小数字数量。2,3,4放到2,4的前面。
2023-07-13 22:09:44 58
原创 【华为OD统一考试B卷 】最小传输时延 python
现给定相连节点之间的时延列表times[i]={u,v,w},其中u表示源结点,v表示目的结点,w表示u和v之间的消息传递时延。网络通过一个有向无环图表示,其中图的边的值表示结点之间的消息传递时延。时延列表times的长度不超过6000,且 1
2023-07-13 22:07:44 72
原创 【华为OD统一考试B卷 】招聘 python
(Si < Ei,均为非负整数)表示每场面试的开始和结束时间。一名面试官完成一次面试后可以立即进行下一场面试,且每个面试官的面试人次不超过m。接下来的 n 行为每场面试的起始时间和结束时间,起始时间和结束时间用空格分隔。输入的第一行为面试官的最多面试人次 m,第二行为当天总的面试场次 n,面试采用一对一的方式,即一名面试官同时只能面试一名应试者,总共有3场面时,[5,10]和[8,35]有重叠。每人每次面试的时长不等,并已经安排给定,总共有3场面时,面试时间都不重叠。每个面试官最多能面试3人次。
2023-07-13 21:54:09 44
原创 【华为OD统一考试B卷 】跳格子2 python
如果偷窃了最后一间房屋,则不能偷窃第一间房屋,因此偷窃房屋的范围是第二间房屋到最后一间房屋。小明和朋友玩跳格子游戏,有 n 个连续格子组成的圆圈,每个格子有不同的分数,小朋友可以选择从任意格子起跳,但是不能跳连续的格子,不能回头跳,也不能超过一圈:给定一个代表每个格子得分的非负整数数组,计算能够得到的最高分数。如果只有一间房屋,则偷窃该房屋,可以偷窃到最高总金额。如果只有两间房屋,则由于两间房屋相邻,不能同时偷窃,只能偷窃其中的一间房屋,因此选择其中金额较高的房屋进行偷窃,可以偷窃到最高总金额。
2023-07-13 21:43:34 77
原创 【华为OD统一考试B卷 】篮球比赛 python
给出10个球员的战斗力,如果你是教练,你该如何分队,才能达到最佳训练效果?请说出该分队方案下的最小战斗力差值。10个篮球队员的战斗力(整数,范围[1,10000]),战斗力之间用空格分隔,如:10987654321。现有10个球员准备分为两队进行训练赛,教练希望2个队伍的战斗力差值能够尽可能的小,以达到最佳训练效果。篮球(5V5)比赛中,每个球员拥有一个战斗力,每个队伍的所有球员战斗力之和为该队伍的总体战斗力。不需要考虑异常输入的场景。最小的战斗力差值,如:1。
2023-07-13 21:37:54 119
原创 【华为OD统一考试B卷 】数字游戏 python
第1 、 2 1、21、2两张牌教字和为14 1414,可以整除7 77,输出1 11,第二组小明牌的数字为11 1111,再发了10 1010张牌,这10 1010张牌数字和为10 1010,无法整除11 1111,输出0 00。需要小明判断,后n nn张牌中,是否存在连续的若干张牌,其和可以整除小明手中牌上的数字。对每组输入,如果存在满足条件的连续若干张牌,则输出1 11;第二行有n nn个数,代表后续发的n nn张牌上的数字,以空格隔开。输入数据有多组,每组输入数据有两行,输入到文件结尾结束。
2023-07-13 21:33:12 50
原创 【华为OD统一考试B卷 】查字典 python
输入一个单词前缀和一个字典,输出包含该前缀的单词。1.查找字典中是否包含该字符串,包含则输出。所有包含该前缀的单词,多个单词换行输出。单词前缀+字典长度+字典。字典是一个有序单词数组。
2023-07-13 21:16:21 187 1
原创 【华为OD统一考试B卷 】最长广播效应 python
当指定一个结点向其他结点进行广播,所有被广播结点收到消息后都会在原路径上回复一条响应消息,请计算发送结点至少需要等待几个时间单位才能收到所有被广播结点的响应消息。2到5的最小时延是2个时间单位,而2到其他结点的最小时延是1个时间单位,所以2收到所有结点的最大响应时间为2*2=4。网络中的结点互联互通,且结点之间的消息传递有时延,相连结点的时延均为一个时间单位。输入的第一行为两个正整数,分别表示网络结点的个数N,以及时延列表的长度T;输出一个整数,表示发送结点接收到所有响应消息至少需要等待的时长。
2023-07-13 21:06:45 67
原创 【华为OD统一考试B卷 】数据最节约的备份方法 python
有若干个文件,使用刻录光盘的方式进行备份,假设每张光盘的容量是500MB,求使用光盘最少的文件分布方式。(100,400),(200,300),(500) 3张光盘即可。输入和输出内容都不含空格。所有文件的大小都是整数的MB,且不超过500MB;文件不能分割、分卷打包。示例1 输入输出示例仅供调试,后台判题数据一般不包含示例。
2023-07-13 21:03:31 178
原创 【华为OD统一考试B卷 】寻找最大价值的矿堆 python
假设银矿价值1 ,金矿价值2,请你找出地图中最大价值的矿堆并输出该矿堆的价值。给你一个由 ‘0’(空地)、’1’(银矿)、’2’(金矿)组成的的地图,矿堆只能由上下左右相邻的金矿或银矿连接形成。超出地图范围可以认为是空地。示例1 输入输出示例仅供调试,后台判题数据一般不包含示例。地图范围最大 300*300。0
2023-07-13 20:59:40 57
原创 【华为OD统一考试B卷 】We Are A Team python
输出描述: 1、c ==1,根据 a 和 b 是否在一个团队中输出一行字符串,在一个团队中输出‘we are a team‘,不在一个团队中输出’we are not a team’ 2、c 为其他值,或当前行 a 或 b 的标号小于 1 或者大于 n 时,输出字符串‘da pian zi‘3、c == 1 代表需要判定 a 和 b 的关系,如果 a 和 b 是一个团队,输出一行’we are a team’,如果不是,输出一行’we are not a team’
2023-07-13 20:54:39 74
原创 【华为OD统一考试B卷 】书籍叠放 python
书籍的长、宽都是整数对应 (l,w)。如果书A的长宽度都比B长宽大时,则允许将B排列放在A上面。现在有一组规格的书籍,书籍叠放时要求书籍不能做旋转,请计算最多能有多少个规格书籍能叠放在一起。1:注意审题,书A的长宽度都比B长宽大时,才能叠上去,也就是两个数字都比另外一个大才行。2:那题目就比较好理解了,先按照长度、宽度对书籍进行排序(长度相同的,再按照宽度排序)。3:动态规划,转移方程:dp[i] = max(dp[i], dp[j] + 1);解释:前三本可叠放在一起。
2023-07-13 20:49:14 123
原创 【华为OD统一考试B卷 】区间交集 python
任意两个给定区间的交集,称为公共区间(如:[1,2],[2,3]的公共区间为[2,2],[3,5],[3,6]的公共区间为[3,5])。公共区间之间若存在交集,则需要合并(如:[1,3],[3,5]区间存在交集[3,3],需合并为[1,5])。一组区间列表,区间数为 N: 0
2023-07-13 20:47:03 67
原创 【华为OD统一考试B卷 】字符串比较 python
2、该连续子串|A[i] – B[i]|之和小于等于V。其中|A[i] – B[i]|表示两个字母ASCII码之差的绝对值。字符串最大连续子串的长度,要求该子串|A[i] – B[i]|之和小于等于V。第一行为字符串A,仅包含小写字符,1
2023-07-12 20:58:19 40
原创 【华为OD统一考试B卷 】解压报文 python
压缩规则:n[str],表示方括号内部的 str 正好重复 n 次。注意 n 为正整数(0 < n
2023-07-12 20:52:05 89
原创 【华为OD统一考试B卷 】找最小数据 python
我们只需要从高位到低位依次看过去,哪一位开始下降了,那么就移除它的前一位就好了。给一个正整数num1,计算出新正整数num2,num2为num1中移除N位数字后的结果,需要使得num2的值最小。1.输入的第一行为一个字符串,字符串由0-9字符组成,记录正整数num1,num1长度小于32。2:因为题目限定了需要移除的数字的个数,小于num1长度,所以我们不用考虑异常输入。4:其实和leetcode上的题目非常类似,简直说可以是一样,移除k位数字。2.输入的第二行为需要移除的数字的个数,小于num1长度。
2023-07-12 20:43:43 83
原创 【华为OD统一考试B卷 】宜居星球改造计划 python
初始化下,该区域可能存在多个宜居区,并且每个宜居区能同时在每个太阳日单位向上下左右四个方向的相邻格子进行扩散,自动将 4 个方向相邻的真空区改造成宜居区;请计算这个待改造区域的网格中,可改造区是否能全部变成宜居区,如果可以,则返回改造的太阳日天数,不可以则返回-1。输入row * column个网格数据,每个网格值枚举值如下:YES,NO,NA;可改造区是否能全部变成宜居区,如果可以,则返回改造的太阳日天数,不可以则返回-1。NA 表示死亡区,不作为判断是否改造完成的宜居,无法穿过;
2023-07-12 20:41:06 76
原创 【华为OD统一考试B卷 】内存资源分配 python
有一个简易内存池,内存按照大小粒度分类,每个粒度有若干个可用内存资源,用户会进行一系列内存申请,需要按需分配内存池中的资源返回申请结果成功失败列表。分配的内存要大于等于内存的申请量,存在满足需求的内存就必须分配,优先分配粒度小的,但内存不能拆分使用;需要按申请顺序分配,先申请的先分配,有可用内存分配则申请结果为true;申请的内存大小间用逗号分割,申请列表不大于100000。包含内存粒度数据信息,粒度数据间用逗号分割。冒号前为内存粒度大小,冒号后为数量。第一行为内存池资源列表。输出为内存池分配结果。
2023-07-12 20:29:45 62
原创 【华为OD统一考试B卷 】跳房子I python
假设房子的总格数是count,小红每回合可能连续跳的步教都放在数组steps中,请问数组中是否有一种步数的组合,可以让小红两个回合跳到量后一格?此样例有多种组合满足两回合跳到最后,譬如: [-1,9],[2,6],其中[-1,9]的索引和为0+3=3,[2,6]的索和为1+4=5,所以索引和最小的步数组合[-1,9]1:leetcode 两数之和 原题改过来的,leetcode上面要求的是返回所有的下标(也叫索引),这里是取索引和最小的步数组合。跳房子的过程中,可以向前跳,也可以向后跳。
2023-07-12 20:26:26 84
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人