- 博客(18)
- 收藏
- 关注
原创 滑动窗口详解
滑动窗口是一种遍历连续区间的技术。其思想是用两个指针(通常称为左指针 L 和右指针 R)来表示一个区间,这个区间就是“窗口”。随着右指针不断右移,我们逐步加入新的元素;当区间不满足条件时,再移动左指针以缩小窗口。例如,若我们需要求数组中长度为 k 的每个子区间的最大值,就可以考虑维护一个大小固定为 k 的窗口,不断从左侧移除旧元素、从右侧加入新元素。
2025-04-07 18:52:20
757
原创 动态规划——区间DP
区间DP(区间动态规划)是一种用于解决与区间或子区间相关问题的动态规划技巧。其基本思想是将问题拆分为多个子问题,每个子问题对应一个区间,然后通过状态转移方程将这些子区间的最优解组合起来,得到整个问题的最优解。
2025-04-02 20:37:02
858
原创 题解:AT_abc170_f [ABC170F] Pond Skater
はじめ、すぬけ君はマス (3,2) にいます。容易发现现在队头的坐标 (x,y) 往某个方向走到一定程度时,当前坐标 (x2,y2) 需要走的步数小于现在队头的步数 +1 ,此时就可以停止往这个方向的搜索,因为从 (x2,y2) 已经比从 (x,y) 更优了。すぬけ君がマス (x1,y1) から (x2,y2) まで移動するのに最小で何回水をかく必要があるか求めてください。すぬけ君がマス (x1,y1) から (x2,y2) まで移動するのに必要な最小の水かきの回数を出力せよ。
2025-03-23 08:00:00
1487
原创 经典DP——夜狼
这道题非常考验对区间DP模型的掌握。核心思路是确定一个区间内“最后被击败”的狼,然后通过子区间的最优解推导整段的最优解。这种技巧在很多博弈类、树形结构或链状结构的DP问题中都有应用。如果你也喜欢这种题型,推荐练习:石子合并、矩阵连乘、括号匹配等经典区间DP题目。
2025-03-22 08:00:00
841
原创 最短路算法(3)——SPFA算法
SPFA(Shortest Path Faster Algorithm)是一种求单源最短路径的算法,常用来解决带负权边(但无负权回路)的图的最短路径问题。:和Bellman-Ford一样,SPFA利用松弛操作更新从源点到其他点的最短距离。如果发现某一条边能够使得目标点的距离变短,则更新该点的距离。:不同于Bellman-Ford每次遍历所有边,SPFA使用一个队列来维护那些距离更新后可能影响其他节点的顶点。只有当一个顶点的距离发生变化时,它才会被加入队列,从而减少了不必要的计算。
2025-03-16 12:52:53
554
原创 2024年需要超越的目标(目前)
排名 姓名 地区 年级 评分 CCF评级。12646 谭皓元 广东 六年级 1715.24 5。12646 莫子淼 广东 六年级 1715.24 5。12646 邱子铭 广东 六年级 1715.24 5。12646 阳锦霖 广东 六年级 1715.24 5。
2025-03-12 07:33:32
1057
原创 最短路算法(2)——Dijkstra算法
Dijkstra算法是一种用于求解单源最短路径问题的贪心算法。适用于所有边权都>=0的图。单源最短路,即只求一个点为起点,问与其他点的最短路径。算法的基本思想是:从源点出发,逐步“扩展”到其他顶点,每次都选择当前距离源点最近的未确定最短距离的顶点进行松弛操作,从而保证当一个顶点被“取出”时,其最短距离已经确定。
2025-03-07 19:18:38
581
2
原创 快速幂算法
快速幂算法的原理是转成二进制后能让我们快速的计算出 a^n mod m的值,其复杂度仅为O(log n)。适合在n较大时使用进行优化。
2025-03-06 12:26:23
743
原创 小学回忆录
我从原来班级数一数二的人一落千丈,变成了班级的中下游,最后一次还考了倒数第二。虽然我刚开始不太适应,但在调整了一下后,我的成绩突飞猛进。以下是我的成绩:(第一二次是因为题太水导致我考到了前面)直到开始五下的开始,我上了图灵编程(GZ)的L3。2025.1.7:广雅票祭(于当日弃票)那时候我的成绩看起来还行,没啥大问题。我是在五上~五下才正式学c++的。事情的转机发生在2024.7.?那时,我在班里的成绩是挺好的。五下的L3让我感到措手不及。一切都来得那么突然。我去到了省实的坑班。现在是3.5,废了。
2025-03-05 18:24:39
334
1
原创 并查集概述
顾名思义,并查集主要应用于“并”和“查”。并就是把两个点并到一起(把两个点并集),查就是询问两个点是不是在一起(就是说在不在同一个集合内)。
2025-02-26 19:47:12
522
原创 最小生成树——Prim算法与Kruskal算法
2.原理是以点作为出发点,更新与其他点的距离。设现在的点为x,则更新与x直接相连的点(注意是直接),若可以更新某个点y,则把这个值加入队列。2.在生成最小生成树的过程中,如果已经确定要用这条边,则答案要加上这条边的权值。3.若在执行点x的时候已经标记过x,则跳过这一轮(因为已经有了更优解)1.代码实现中要用数组标记每一个节点是否已经加入最小生成树。1.适用于稠密图(若有n个节点,则接近于。
2025-02-22 23:31:37
468
1
空空如也
关于优快云博客资源
2025-03-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人