- 博客(7)
- 收藏
- 关注
原创 递归函数题 整数拆分
摘要:本文介绍了一个整数拆分问题的解法。题目要求将正整数n拆分成单调不减的数字序列,并按字典序输出所有方案。核心算法采用深度优先搜索(DFS)和回溯技术,通过记录上一次拆分数字来保证序列单调性,同时利用DFS特性自动满足字典序要求。代码实现简洁,使用递归函数dfs处理拆分过程,当剩余数值为0时输出有效方案,通过回溯机制穷举所有可能组合。该算法适用于n≤10的小规模问题。
2026-04-01 14:24:43
53
原创 蓝桥杯 2013 省B H题 翻硬币
摘要:该题目描述了一个翻硬币游戏,要求通过翻转相邻两个硬币将初始状态转换为目标状态,求最少操作次数。采用贪心策略,从前往后比较两个状态,发现不同时立即翻转当前硬币及后一个硬币,并统计次数。算法保证最优解,时间复杂度为O(n)。输入为两行等长字符串,输出为最小操作步数。
2026-03-31 22:13:07
53
原创 天梯赛编程题 L2—051 满树的遍历 题解
本文提出了一种使用链表模拟多叉树的优化方法。通过引入first_child、next_bro和last_child指针,构建左孩子右兄弟表示法。初始版本因add_child函数中使用while循环导致O(n²)时间复杂度而超时。改进方案通过last_child指针直接访问链表末尾,将时间复杂度降至O(1),成功通过测试。该方法有效解决了多叉树存储和遍历问题,在保证空间效率的同时显著提升了性能。
2026-03-13 16:52:26
63
原创 天梯赛编程题 L2—048 寻宝图 题解
摘要: 题目要求统计$N×M$网格中的岛屿总数及含宝藏的岛屿数量。岛屿定义为相邻(上下左右)陆地('1'-'9')的连通块,含至少一个'2'-'9'字符的岛屿为宝藏岛屿。采用BFS/DFS遍历,通过标记访问和泛洪填充识别连通块:遍历每个未访问的陆地格子启动搜索,过程中检查宝藏标记,最终统计总数和宝藏岛屿数。时间复杂度$O(NM)$,空间复杂度$O(NM)$。代码使用BFS实现,包含边界处理、队列优化及方向数组等典型图论技巧。
2026-03-13 13:39:04
438
原创 天梯赛编程题 L1—111 大幂数 题解
,判断它是否能表示为从 1 开始的连续自然数的。如果存在这样的表示,请找出所有可能情况中。由于幂函数增长非常快,随着。的范围很小,我们可以采用。如果不存在任何满足条件的。,且最小项数为 2 (即。(从 30 递减到 1)。
2026-03-12 16:44:01
303
原创 天梯赛编程题 L3-041 影响力 题解
单次查询O1O(1)O1(仅涉及常数次算术运算)。总时间复杂度OnmO(nm)Onm(遍历矩阵每个点一次)。空间复杂度O1O(1)O1(若不存储输入矩阵)或OnmO(nm)Onm(存储输入)。该算法完全满足nm≤106nm≤106的数据规模限制。
2026-03-12 16:22:26
895
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1