- 博客(11)
- 收藏
- 关注
原创 DFS题目练习
本文记录了作者练习DFS算法的过程,包含两道题目解析:1)正则表达式匹配最长连续x个数,通过DFS处理括号和逻辑或;2)全球变暖导致岛屿淹没问题,使用DFS标记岛屿并统计完全淹没数量。文中提供了详细代码实现,包括递归处理、边界条件判断和set容器的应用技巧,展现了DFS算法在实际问题中的灵活运用。
2026-04-01 23:30:57
14
原创 十滴水游戏
摘要:本文实现了一个基于一维网格的水滴爆炸游戏。游戏规则包括:1)在1×c网格中,初始有m个格子带水量;2)每次操作给指定格子加水;3)当水量≥5时触发爆炸,向左右最近有水格子各+1水量;4)爆炸可能引发连锁反应。采用unordered_map存储水量,set维护有水格子位置,利用队列处理连锁爆炸。时间复杂度为O(nlogn),适用于大规模数据(c≤10^9,m≤3×10^5,n≤1.2×10^6)。关键点在于高效处理爆炸连锁反应和动态维护有水格子集合。
2026-03-16 22:55:46
320
原创 题解:因子化简
该程序实现了一个数论问题的求解:给定Q次查询,每次输入N和K,要求输出N的所有质因数中次数≥K的质因数乘积。程序首先用埃拉托斯特尼筛法预处理1e6以内的素数,然后对每个N进行质因数分解,统计各质因数的次数,最后计算满足条件的质因数乘积。时间复杂度主要取决于筛法预处理和质因数分解过程。
2026-03-13 23:27:42
13
原创 CSP中邻域均值
摘要:本文介绍了一种使用前缀和方法计算二维矩阵区域平均值的算法。通过预先计算前缀和矩阵,可以快速求出任意矩形区域内的元素和。算法首先确定查询范围边界,然后利用前缀和公式计算区域和,最后求平均值并与阈值比较。该方法避免了重复计算,显著提高了处理效率。文章给出了完整的C++实现代码,包括边界条件处理和区域平均值计算过程。
2026-03-11 12:29:12
15
原创 期末预测之最佳阈值
本文探讨了使用快速排序算法优化阈值选择问题。针对传统冒泡排序O(n²)时间复杂度的不足,作者采用快速排序处理输入数据,并详细介绍了快速排序的实现模板和C++中的sort函数用法。在数据处理上,使用pair结构存储输入值及其标签。核心算法通过统计不同阈值下正确预测的数量,寻找最优阈值:从左到右遍历排序后的数据,维护0和1的累计计数,计算当前阈值下的得分,最终输出使预测准确率最大的最大阈值。该方案通过排序优化和高效统计,显著提升了计算效率。
2026-03-09 09:31:46
16
原创 农夫约翰真的种地
农夫约翰在他的农场种植了 NN 个芦笋,编号 1∼N。其中,第 ii 个芦笋的初始高度为 hihi,每经过一天高度会增长 ai。给定一个 0∼N−10∼N−1 的排列 t1,t2,…,tN。请问至少多少天后能够满足,对于每个 1≤i≤N,恰好有 titi 个芦笋比第 ii 个芦笋的高度更高。
2025-04-19 23:05:17
357
原创 贝茜d炮弹
贝茜已经精通了变成炮弹并沿着长度为 NN 的数轴弹跳的艺术,数轴上的位置从左到右编号为 1,2,…,N1,2,…,N。她从某个整数位置 SS 开始,以 11 的起始能量向右弹跳。如果贝茜的能量为 kk,则她将弹跳至距当前位置向前距离 kk 处进行下一次弹跳。从 11 到 NN 的每个整数位置上均有炮击目标或跳板。每个炮击目标和跳板都有一个在 00 到 NN 范围内的整数值。一个数值为 vv 的跳板会使贝茜的能量增加 vv 并反转她的方向。
2025-04-11 12:31:39
521
原创 密接牛追踪
农夫约翰有 NN 头奶牛排成一排,从左到右依次编号为 1∼N1∼N。不幸的是,有一种传染病正在蔓延。最开始时,只有一部分奶牛受到感染。每经过一个晚上,受感染的牛就会将病毒传染给它左右两侧的牛(如果有的话)。一旦奶牛被感染,它就会一直被感染,无法自愈。给定一个经过若干个夜晚后的奶牛的整体状态,其中哪些奶牛已经被感染,哪些奶牛尚未被感染统统已知。请你计算,最开始时就受到感染的奶牛的最小可能数量。
2025-04-10 16:45:07
237
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅