- 博客(45)
- 收藏
- 关注
原创 华为OD机试_2025 B卷_非严格递增连续数字序列(Python,100分)(附详细解题思路)
严格递增序列查找:修改条件为多序列记录:存储所有最长序列而非仅长度非连续数字处理:跳过非数字但仍保持序列状态大规模数据优化:分块处理海量数据这个解法通过简单的状态跟踪和条件判断,高效解决了最长非严格递增连续数字序列的查找问题。初学者可以从中学习到字符串处理的基本技巧、状态管理和边界处理等核心编程概念。
2025-06-11 11:45:00
336
原创 华为OD机试_2025 B卷_喊7的次数重排(Python,100分)(附详细解题思路)
游戏模拟:类似"数7"、"击鼓传花"等游戏循环调度:操作系统/分布式系统的任务调度事件分配:轮询机制的资源分配环形计数:时钟系统、周期性任务管理逻辑测试:面试中的基础算法考察循环控制的实现技巧环形数据结构的处理方法条件判断的优化策略计数算法的设计思路边界情况的全面考虑这种模拟计数的方法是解决类似游戏的通用模式,理解后可以扩展到更复杂的场景中。
2025-06-11 08:30:00
278
原创 华为OD机试_2025 B卷_相对开音节(Python,100分)(附详细解题思路)
时间复杂度:O(n×m),n为单词数,m为平均单词长度空间复杂度:O(n),存储处理后的单词高效性:滑动窗口+条件短路优化健壮性:正确处理各种边界情况。
2025-06-10 12:39:31
566
原创 华为OD机试_2025 B卷_数组拼接(Python,100分)(附详细解题思路)
循环控制:外层while循环保证处理完整,内层for循环保证顺序索引跟踪:pointers数组记录每个数组的当前位置动态计算:使用min()函数确保安全取数状态管理:remaining计数器高效判断结束条件。
2025-06-10 10:54:30
429
原创 华为OD机试_2025 B卷_字符串分割(Python,100分)(附详细解题思路)
水仙花数特性:仅四位三位数满足条件动态规划应用:高效记录分割方案前缀和优化:快速计算任意子串和状态转移设计:双重循环检查所有分割点方案数管理:只需区分0、1、多三种情况。
2025-06-09 12:14:17
477
原创 华为OD机试_2025 B卷_差值数组不同的字符串(Python,100分)(附详细解题思路)
字符差值计算理解字母表位置与ASCII码的关系掌握ord()函数转换字符为数字数据结构应用使用元组(tuple)作为字典的键频率统计的字典使用技巧问题分解思维将复杂问题分解为可管理的步骤计算→统计→识别→定位的四步流程这个解法直观展示了分治策略和频率分析在算法问题中的应用,是初学者掌握问题分解和基本数据结构使用的优秀范例。
2025-06-09 10:01:52
691
原创 华为OD机试_2025 B卷_人民币转换(Python,100分)(附详细解题思路)
阿拉伯数字转中文大写金额的核心在于分层处理和规则实现。数据结构:使用映射表实现数字到中文的转换分组策略:每4位一组处理亿、万、元级单位零处理:通过状态标记避免连续零特殊规则十位上的"1"省略"壹"末尾零省略小数部分无时分写"整"边界条件处理(如0元、纯小数)浮点数精度问题(使用round处理)特殊规则优先级(零规则 > 单位规则)通过分治策略和状态管理,我们实现了符合金融规范的中文大写金额转换,满足了题目中的所有规则要求。
2025-06-07 14:57:00
1310
原创 华为OD机试_2025 B卷_计算某个字符出现次数(Python,100分)(附详细解题思路)
写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出"输入字符串(第二行输入的字符)"中该字符的出现次数。这个简单而强大的字符统计方法展示了Python处理字符串问题的优雅和高效,是编程入门必备的核心技能之一。输出输入字符串中含有该字符的个数,(不区分大小写字母)本题考查的是字符串中字符出现次数的统计,核心要点是。第一行输入一个由字母、数字和空格组成的字符串,第二行输入一个字符(保证该字符不为空格)。(不区分大小写字母)。
2025-06-07 14:06:19
579
原创 安全测试流程框架
一个完整的安全测试是一个系统化、结构化的过程,从威胁分析开始贯穿整个软件开发生命周期(SDLC),最终实现风险可控。“该IDOR漏洞可使攻击者访问所有用户订单,影响230万用户数据(GDPR处罚风险预估€2000万)”(参考NIST CSF框架),使安全测试从「项目制」转向「能力化」。:《威胁分析报告》含Top 10风险清单及防护策略建议。:识别潜在攻击面,量化风险优先级。:将威胁转化为可执行的测试用例。交互式测试 IAST。软件成分分析 SCA。
2025-06-06 12:32:45
902
原创 华为OD机试_2025 B卷_英文输入法(Python,100分)(附详细解题思路)
主管期望你来实现英文输入法单词联想功能。依据用户输入的单词前缀,从已输入的英文语句中联想出用户想输入的单词,按字典序输出联想到的单词序列,如果联想不到,请输出用户输入的单词前缀。英文单词联想时,区分大小写缩略形式如”don’t”,判定为两个单词,”don”和”t”输出的单词序列,不能有重复单词,且只能是英文单词,不能有标点符号输入为两行。首行输入一段由英文单词word和标点符号组成的语句str;接下来一行为一个英文单词前缀pre。
2025-06-06 10:37:02
1096
原创 华为OD机试_2025 B卷_数组去重和排序(Python,100分)(附详细解题思路)
给定一个乱序的数组,删除所有的重复元素,使得每个元素只出现一次,并且按照出现的次数从高到低进行排序,相同出现次数按照第一次出现顺序进行先后排序。一个数组去重排序后的数组。
2025-06-06 09:21:10
943
原创 华为OD机试_2025 B卷_TLV解析(Python,100分)(附详细解题思路)
两端通过TLV格式的报文来通信,现在收到对端的一个TLV格式的消息包,要求生成匹配后的(tag, length, valueOffset)列表。具体要求如下:(1)消息包中多组tag、length、value紧密排列,其中tag,length各占1字节(uint8_t) , value所占字节数等于length的值(2)结果数组中tag值已知,需要填充每个tag对应数据的length和valueOffset值(valueOffset为value在原消息包中的起始偏移量(从0开始,以字节为单位)),
2025-06-05 16:43:12
773
原创 华为OD机试_2025 B卷_区间交集(Python,100分)(附详细解题思路)
任意两个给定区间的交集,称为公共区间(如:[1,2],[2,3]的公共区间为[2,2],[3,5],[3,6]的公共区间为[3,5])。公共区间之间若存在交集,则需要合并(如:[1,3],[3,5]区间存在交集[3,3],需合并为[1,5])。[1,3],[3,3],[3,5]存在交集,须合并为[1,5]。公共区间列表为[[1,3],[3,3],[3,5]];[0,3]和[3,5]的公共区间为[3,3],[1,3]和[3,5]的公共区间为[3,3],[1,3]和[3,6]的公共区间为[3,3],
2025-06-04 09:14:14
1045
原创 华为OD机试_2025 B卷_最大岛屿体积(Python,100分)(附详细解题思路)
给你一个由 大于0的数(陆地)和 0(水)组成的的二维网格,请你计算网格中最大岛屿的体积。陆地的数表示所在岛屿的体积。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。第一行是二维网格的宽和高。后面几行是二维网格。输出岛屿的最大体积。无。
2025-06-03 14:18:12
461
原创 华为OD机试_2025 B卷_精准核酸检测(Python,100分)(附详细解题思路)
理解问题本质:图论中的连通分量选择合适算法:BFS层级扩展注意边界条件:确诊者不计入结果实现简洁高效:使用队列和访问标记这种解题思路不仅适用于疫情防控,还可扩展到社交网络分析、信息传播预测等领域。掌握基础算法思想,就能灵活解决各种现实问题!
2025-06-03 12:16:58
725
原创 华为OD机试_2025 B卷_虚拟游戏理财(Python,100分)(附详细解题思路)
这道题展示了问题分析和约束利用抓住"最多两个产品"的关键约束通过枚举所有可能方案确保找到最优解简单直观的解法比复杂算法更有效双重循环解法的时间复杂度是 O(m²),在 m≤20 时完全可行。单独考虑每个产品组合考虑每对产品优先投资高回报率产品。
2025-06-02 15:33:31
773
原创 华为OD机试_2025 B卷_小华地图寻宝(Python,100分)(附详细解题思路)
BFS的基本框架队列初始化访问标记方向扩展网格问题的处理技巧方向数组简化移动边界检查确保安全访问标记避免重复问题分析能力识别连通区域特性选择合适遍历算法处理边界条件BFS解法时间复杂度 O(m×n),空间复杂度 O(m×n),在题目约束下完全可行。代码简洁直观,适合初学者理解和实现。小技巧:网格遍历问题优先考虑BFS,它提供了一种系统化、可预测的访问顺序,确保不会遗漏任何可达点。
2025-06-02 12:39:23
989
原创 华为OD机试_2025 B卷_人数最多的站点(Python,100分)(附详细解题思路)
使用字典高效存储数据差分数组处理区间统计问题有序遍历确保结果正确性边界条件的全面考虑这种方法不仅适用于本题,还可扩展到其他区间统计问题,如会议室安排、公交调度等。核心是抓住事件发生点(上下车点),通过有序处理这些点来高效计算状态变化。
2025-06-01 16:13:27
591
原创 华为OD机试_2025 B卷_机房布局(Python,100分)(附详细解题思路)
这道题教会我们,贪心算法在覆盖类问题中非常实用:从左到右扫描,及时覆盖每个机柜,优先共享电箱。无效情况(如孤立机柜)要优先处理。用数组记录状态,避免重复放置。时间复杂度 O(n),空间复杂度 O(n),适合大数据。作为初学者,多从简单例子入手,理解贪心策略的“局部最优导致全局最优”思想。希望这篇博客帮你掌握这道题!如果有疑问,欢迎留言讨论。
2025-06-01 15:18:34
1333
原创 华为OD机试_2025 B卷_静态扫描(Python,100分)(附详细解题思路)
问题特性:重复文件可复用缓存,决策相互独立核心洞察:缓存的价值 = 后续扫描成本节省 - 缓存成本算法选择:分组统计 + 成本比较(O(N)时间复杂度)优化关键小文件高频:倾向不缓存(如示例1)大文件高频:倾向缓存(如示例2)低频文件:通常不缓存实际应用场景:编译器构建系统(如Makefile)、CI/CD流水线,通过缓存中间结果加速重复构建过程。
2025-05-31 19:55:47
1474
原创 华为OD机试_2025 B卷_小明减肥(Python,100分)(附详细解题思路)
适用条件:n较小时(n<20)的理想解法优势:代码简洁(<10行核心逻辑),无需复杂算法扩展性:若n较大可改用动态规划,但本题无需核心技巧:利用生成组合,直接求和比较对于初学者,掌握这种枚举思想是解决组合类问题的基石。当遇到类似"选择满足条件的子集"问题时,首先评估数据规模,小规模数据优先考虑枚举解法。
2025-05-31 13:21:16
1345
原创 华为OD机试_2025 B卷_数组组成的最小数字(Python,100分)(附详细解题思路)
通过枚举所有可能的元素组合,并对每个组合生成全排列后取最小值,可以确保找到全局最优解。虽然时间复杂度较高,但在题目限制下完全可行。核心技巧在于利用字符串字典序比较,直接生成最小可能的拼接结果。
2025-05-30 09:15:35
641
原创 华为OD机试_2025 B卷_最小循环子数组(Python,100分)(附详细解题思路)
通过预处理所有可能的子数组长度,并逐一验证重复规则,可以在合理时间内找到最小的满足条件的子数组。关键点在于因数的生成和高效验证每个候选长度的有效性。
2025-05-29 14:43:27
429
原创 华为OD机试_2025 B卷_代码编辑器(Python,100分)(附详细解题思路)
指针维护:每次操作后需确保指针位置在范围内。字符串操作:列表的切片操作能高效处理插入和删除。查找优化:将列表转为字符串后利用内置方法find和rfind提升效率。边界处理:特别注意REPLACE和DELETE操作后文本长度变化对指针的影响。通过分步骤模拟每个指令的行为,并严格维护指针的有效位置,可以确保最终结果的正确性。
2025-05-28 17:00:43
971
原创 华为OD机试_2025 B卷_报文响应时间(Python,100分)(附详细解题思路)
本题的关键在于正确处理最大响应时间的计算,并通过遍历维护最小截止时间。位运算的使用是核心技巧,需特别注意exp和mant的提取方式。最终只需在所有截止时间中取最小值即可得到答案。
2025-05-28 12:30:37
1002
原创 华为OD机试_2025 B卷_欢乐的周末(Python,100分)(附详细解题思路)
小华和小为是很要好的朋友,他们约定周末一起吃饭。通过手机交流,他们在地图上选择了多个聚餐地点(由于自然地形等原因,部分聚餐地点不可达),求小华和小为都能到达的聚餐地点有多少个?第一行输入 m 和 nm 代表地图的长度n 代表地图的宽度第二行开始具体输入地图信息,地图信息包含:0 为通畅的道路1 为障碍物(且仅1为障碍物)2 为小华或者小为,地图中必定有且仅有2个 (非障碍物)3 为被选中的聚餐地点(非障碍物)可以被两方都到达的聚餐地点数量,行末无空格。备注。
2025-05-26 19:03:18
982
原创 华为OD机试_2025 B卷_返回矩阵中非1的元素个数(Python,100分)(附详细解题思路)
存在一个m*n的二维数组,其成员取值范围为0,1,2。其中值为1的元素具备同化特性,每经过1S,将上下左右值为0的元素同化为1。而值为2的元素,免疫同化。将数组所有成员随机初始化为0或2,再将矩阵的[0, 0]元素修改成1,在经过足够长的时间后求矩阵中有多少个元素是0或2(即0和2数量之和)。输入的前两个数字是矩阵大小。后面是数字矩阵内容。返回矩阵中非1的元素个数。输入数字前两个数字是矩阵大小。后面的数字是矩阵内容。
2025-05-26 16:35:24
961
原创 华为OD机试_2025 B卷_食堂供餐(Python,100分)(附详细解题思路)
实时库存更新:每个时间段处理后立即补充x份,确保后续时间段有足够库存。终止条件判断:二分法终止时,左边界指向第一个可行解。处理大数范围:初始右边界足够大以保证覆盖所有可能情况。通过这种思路,我们能够高效且准确地找到最低的制作速度,确保食堂供应充足。这种二分与模拟结合的方法在类似的最优化问题中具有广泛的适用性。
2025-05-26 15:10:52
1154
原创 华为OD机试_2025 B卷_爱吃蟠桃的孙悟空(Python,100分)(附详细解题思路)
通过二分法快速缩小搜索范围,结合合理的边界条件确定,能够高效解决此类速度最优化问题。该算法的时间复杂度为O(N log max_pile),适用于题目给定的数据范围。
2025-05-23 15:59:56
2124
原创 性能测试场景题
针对618、双十一等高并发电商大促活动,设计压力测试方案需明确目标、设计场景、准备数据、执行监控、分析优化并输出报告。首先,明确核心指标如峰值TPS、响应时间和容错能力,并优先测试核心链路和高风险模块。其次,设计基准、全链路峰值和异常场景,模拟真实流量和极端情况。数据准备需隔离压测数据并构造虚拟用户和热点商品数据。执行时使用工具如JMeter、Prometheus等监控系统性能,分析瓶颈并优化,如扩展服务、异步化改造和限流降级。最后,输出压测报告,提出优化建议,确保系统稳定性和用户体验。
2025-05-22 21:30:45
574
原创 华为OD机试_2025 B卷_最长的指定瑕疵度的元音子串(Python,100分)(附详细解题思路)
开头和结尾都是元音字母(aeiouAEIOU)的字符串为元音字符串,其中混杂的非元音字母数量为其瑕疵度。比如:“a” 、 “aa”是元音字符串,其瑕疵度都为0“aiur”不是元音字符串(结尾不是元音字符)“abira”是元音字符串,其瑕疵度为2给定一个字符串,请找出指定瑕疵度的最长元音字符子串,并输出其长度,如果找不到满足条件的元音字符子串,输出0。子串:字符串中任意个连续的字符组成的子序列称为该字符串的子串。首行输入是一个整数,表示预期的瑕疵度flaw,取值范围[0, 65535]。
2025-05-21 16:41:26
298
原创 华为OD机试_2025 B卷_用户调度问题(Python,100分)(附详细解题思路)
通过逐个用户贪心选择最优策略,并动态更新允许的策略范围,代码能够高效求解符合规则的资源消耗问题。该方法严格遵循题目要求,确保每一步选择局部最优,最终输出正确结果。
2025-05-20 11:33:36
618
原创 华为OD机试_2025 B卷_货币单位换算(Python,100分)(附详细解题思路)
将所有记录的转换结果累加,直接输出总和。通过正则解析、单位统一转换和整数除法,本方案高效解决了多国货币汇总问题。代码简洁且严格处理汇率转换,确保计算结果准确。
2025-05-19 18:32:45
629
原创 华为OD机试_2025 B卷_字符串序列判定(Python,100分)(附详细解题思路)
通过逐字符顺序查找并动态更新搜索区间,该方法以简洁的逻辑实现了子序列的有效性判定与末位定位。代码易于理解且效率优异,非常适合处理大规模字符串输入。
2025-05-19 16:48:14
987
原创 华为OD机试_2025 B卷_找出符合要求的字符串子串(Python,100分)(附详细解题思路)
通过集合快速筛选字符并去重,结合简单排序逻辑,可以高效解决从字符串2提取字符串1字符的问题。该方法代码简洁,时间复杂度低,适用于大规模数据处理。
2025-05-19 13:57:56
847
原创 华为OD机试_2025 B卷_判断字符串子序列(Python,100分)(附详细解题思路)
1. 核心解题思路1.1 问题关键点子序列存在性:判断target是否为source的子序列。寻找最后一个起始位置:若存在多个子序列,需找到起始下标最大的那个。1.2 逆序匹配法传统子序列判断通常从前向后匹配,但为了找到最后一个起始位置,需从后向前逆向匹配,并通过贪心策略选择尽可能大的下标位置。预处理字符位置:记录source中每个字符的所有出现位置。逆序匹配:从target的最后一个字符开始,逐个向前匹配。贪心选择最远位置:每次在source中选择当前字符的最大可行位置。示例说明以输入。
2025-05-18 12:57:02
1617
原创 华为OD机试_2025 B卷_字符串加密(Python,100分)(附详细解题思路)
通过动态规划生成偏移数组,并结合模运算处理字符循环,本方法能够高效解决字符串加密问题。代码实现中,通过逐层分解问题、边界条件处理和数学优化,确保了算法的正确性和性能。此思路还可扩展至其他需要周期性偏移的场景(如凯撒密码变种)。
2025-05-16 16:42:01
938
原创 华为OD机试_2025 B卷_拼接URL_详细解题思路
题目要求是,如果前缀的结尾和后缀的开头都没有斜杠,那要在中间补一个。如果都有的话,就去重,只留一个。其他情况的话,比如一个有,另一个没有,就直接连接。那怎么处理这些情况呢?首先,我需要先读取输入的两个部分。输入是用逗号分隔的前缀和后缀。比如输入是“/acm,/bb”,那么前缀是“/acm”,后缀是“/bb”。这时候,前缀末尾有斜杠,后缀开头没有,所以应该变成“/acm/bb”吗?或者原例的输出是那样。原用例的输入前缀是“/acm”以/结尾吗?
2025-05-16 13:17:06
443
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人