- 博客(6)
- 收藏
- 关注
原创 页面替换算法OPT的最优性证明
如果t时刻留A(也就是换掉B or C),那么到达t后首次要用A的时候,有且仅有两种情况,A真的留到了那个时候,被用到了,或者没被用到(这是因为x这段时间有可能换掉了A)。如果t时刻留B,C,也是同样的道理,有可能真的因为保留而被用到;最接近t的(这里的"t后"认为包含t),替换掉的是t后首次要用时刻最远离t的,甚至以后都不用。问题说明:当且仅当遇到一个页面的时候,这个页面会装入内存,抉择替换谁(如果满了),目标是最大化命中次数。,因为"用A"在"用B"之前,这是时间上的包含关系。
2024-12-20 16:14:50
221
原创 2024牛客五一集训派对day2:The Crime-solving Plan of Groundhog(含证明)
2024牛客五一集训派对day2:The Crime-solving Plan of Groundhog(含证明)
2024-05-02 16:19:37
1080
2
原创 SPFA算法理解
SPFA算法是Bellman-Ford的改进,建议阅读本文之前,先学会Bellman-Ford算法这是我之前写的Bellman-Ford的讲解最短路问题, 有向图,n个结点,m个边 (边权可能为负,),设起点为1,终点为n。
2024-04-20 00:58:48
820
原创 Bellman-Ford 算法证明
个点,即找到一个更短的路径,这与一开始说的最短路径为。移到最右边,则重新回到1开始移动,记为新的一轮**, 那么会提前更新完毕,也就是说,此时松弛。都被匹配,截止到此时进行了多少轮**,相当于这个我们已经手动更新好了。是更新好的,那么能够得到更新好的。序列扫描**,则需要松弛多少轮。轮,每轮对每条边进行松弛。是更新好的,但一轮松弛后。并不是提前结束的必要条件。序列的过程相当于一轮松弛。个边 (边权可能为负,然后,反复进行: 如果。这也好理解,因为扫描一轮。最短路问题, 有向图,最短路径用边来表示是。
2024-04-18 21:51:19
971
1
原创 Floyd算法证明
也只会经过一次,因为如果重复经过,则两次经过。两段路径,而这两段路径的中转结点只可能包含。中间经过的所有点都可以去掉(相当于兜圈子)(更新后的)表示的是可经过的中转结点有。下证状态转移的正确性,即:中转结点加入。 这意味着这种情况新的路径可以分为。中转节点:路径中除去起点和终点的结点。是更新前的,左边是更新后的。更新只用到中转结点包含。 如果经过。
2024-04-18 01:14:14
702
1
原创 Codeforces Round 939 (Div. 2) C. Nene‘s Magical Matrix证明
原题 https://codeforces.com/contest/1956/problem/C官方证明 https://codeforces.com/blog/entry/128426官方的证明前面挺好的,但后面有点跳跃,我说说我的理解,建议结合官方证明看原问题可以转化为:对于一个n*n的矩阵,每次涂色能涂一整行或者一整列,这一行或者一列中必须包含x个白色的,(n-x)个黑色的。只能涂最多2n次,证明最终最多有(nn-xx)个黑块。
2024-04-14 20:51:45
584
1
空空如也
C++输出中断,什么原因怎么解决
2023-03-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人