![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 90
OMG_NOIP
一位信息竞赛的初三生
展开
-
图片详解 —— 二维树状数组
想要完全理解二维树状数组,要先完全理解一维树状数组。好,那么你已经学会了二维树状数组的区间查询,接下来我们看单点修改。那么在代码中,我们就只需要写两层循环,一层遍历行的的。列的矩阵前缀和,就需要将下图标绿的矩阵求和。有不懂的私信我,我都会尽量回的。不想画图了,原理和上面的差不多,直接上代码。建议大家先看一遍视频再来看下面的讲解。的数的和,即下图中标红的地方。的矩阵,即下图中标红的地方。,即下图中标红的两个地方。,即下图中标紫的三个地方。,将所有遍历到的矩阵求和。原创 2024-06-25 07:43:02 · 884 阅读 · 0 评论 -
证明裴蜀定理(一位刚学数论两天的初三生发明的证法)
这是一位刚学数论两天的初三生发明的证法原创 2024-05-31 15:00:04 · 909 阅读 · 0 评论 -
证明欧几里得定理(这是一位刚学数论的初三生发明的方法)
这是一位刚学数论的初三生发明的方法原创 2024-05-30 18:52:35 · 767 阅读 · 0 评论 -
AtCoder Beginner Contest 355(F - MST Query)
AtCoder Beginner Contest 355 F - MST Query原创 2024-05-26 18:26:53 · 953 阅读 · 0 评论 -
动态规划——用带权的有向图描述状态的转移
股票买卖的另一种升级版Acwing [股票买卖(含冷冻期)]这道题原题面不知道为什么打不开,但是我们可以在LeetCode上看题面。发现这道题与股票买卖的差别就是卖完股票后不能立刻买股票,那我们往前多考虑一位就可以了。还是设dpi01dpi0/1为对于前iii天,第iii天未持有股票0(0)0持有股票1(1)1能获得的最大利润。如果你还有问题,可以私信我,如果是在工作日,我会尽量在121212小时内回复。正文结束。原创 2024-04-14 09:05:21 · 2018 阅读 · 3 评论 -
动态规划(dp)好题推荐:洛谷P1437 [HNOI2004] 敲砖块
那么就把原问题转化为沟画出重叠三角形的廓折线(图中的红线),找到一条合法的路径,使得围在轮廓线内的数字代价和最大。拿上图举例,如果你选的点是上图中红色的砖块,那就要敲掉红色砖块和所有蓝色砖块。那么需要敲掉的数量就要减去重合的部分(即下图的紫色部分),获得的价值也要剪掉重合的部分。这个例子说明当前选的砖块不只和它上方的两个砖块有关,还和其他的砖块有关,所以不满足。拿上图举例,如果你选的点是上图中红色的砖块,那么。紫色的点是之前选的。需要敲掉的数量就是蓝色砖块的数量,获得的价值就是所有蓝色砖块的价值和。原创 2024-04-09 09:22:59 · 2386 阅读 · 1 评论 -
动态规划的无后效性
举个例子:现在你按进行了5决策1→决策2→决策3→决策4→决策5拿决策3决策3只和决策2有关,与决策1决策4决策5无关。决策3只会影响到决策4,不会影响到决策1决策4决策5。总结:对于一个确定的状态,我们不必关心这个状态是怎么出现的,也不必考虑这个状态的前一个状态是什么.一个阶段的状态只与它之前的状态有关,而与其后续阶段的状态无关。原创 2024-04-09 09:26:34 · 628 阅读 · 1 评论 -
最长上升子序列——二分法
最长上升子序列的长度就是最大的值不为INF的下标,在此样例中就是4.如果你还有问题,请在评论区留言或私信,我会尽量在24小时内解答。尽量小,这样后面的元素就更有可能加入到当前的上升子序列中。下面我的表示方法是 数组名+下标(值),如。的上升子序列末尾数的最小值。这时如果后面有一个元素是。的第3个数,它的值是7。我们用#来代表极大值(原创 2024-04-06 21:14:42 · 2068 阅读 · 1 评论