自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (3)
  • 问答 (2)
  • 收藏
  • 关注

原创 除法分块 简单介绍

除法分块原理简单介绍

2022-07-24 17:38:19 182 1

原创 启发式合并 时间复杂度分析

启发式合并 时间复杂度和原理分析

2022-07-22 23:50:00 1008

原创 51nod 1296 有限制的排列 [动态规划]

1296 有限制的排列1296 有限制的排列题目简洁,不解释.这个题目在转移的时候用到一个特点:假定长为len的一个排列 其中的元素只有1->len, 即每个元素各一个, dp[len] [endval] 表示len长度的排列, 其中以endval作为结尾的排列数量. 当它已知时候, dp[len+1] [endval1]可以理解为从上方已知的dp[len] [endval] 的所有排列中, 对值大于等于endval1的元素都把值加上1, 其他的值不变,那么endval1元素顺利成章的放在 &

2020-10-03 13:42:50 199

原创 51nod 1259 “整数划分 V2“ 动规

1259 “整数划分 V2” 动规1259 整数划分 V2题面比较直白, 不解释这个整数划分和dp的入门题的整数划分有不同,就是数据范围, 这个数据范围是5w, O(n^2)肯定不行.这里的方法是我们想象: 把N的划分分为两个部分: 成分为**[1, 根号n], 另一部分是[(根号n) + 1, n]**.比如n = 4: 4的开方为2; 那么我们对于{1, 3}, 这个划分, 就是由{1}, {3} 组成的,那么我们发现, 如果我们考虑小于根号n的这个部分, 我们可以设置状态dp[ n ] [

2020-10-02 11:08:52 194

原创 【最优高铁环】 分数规划,dfs判负环

牛客上此题链接.这里所用的分数规划的公式是len1+len2+len3 = ans * 3即 0 = ans - len1 + ans - len2 + ans - len3用负环来判断这个公式中ans是否能够继续变大原因是如果用ans - len 作为每一个边的权重,那么负环就是相当于得到 0 > ans - len1 + ans - len2 + ans - len3 即ans可以变大,所以就这样达到目的。注意的是不能够把len - ans作为边的权重,即不能够把边权取相反数,因为上面

2020-08-29 17:43:32 455

原创 【三维cdq】P3810 【模板】三维偏序(陌上花开)

三维偏序cdq:题目中明显说了,三个维度(a, b, c)题目链接这里有必要说明,在一些二维cdq的题目中有题中指定的操作的时间作为第一个维度,这是容易看的,因为对于操作对于后续操作的影响必定要让时间早的操作优先执行,这样才能够保证方法的准确性,相当于弱化了第一个维度存在的含义。但是这里就是要把第一个维度与其他维度等价考虑。这个题目有细节地方的考虑,下面再说,这边先说概括性的思路。有三个维度,我们知道cdq函数在递归调用返回之后,左边一半的区间和右边一半的区间需要有一个维度是所有的右值都大于(小于也

2020-08-23 10:12:05 200

原创 【二维cdq】P3374 【模板】树状数组 1

P3374 【模板】树状数组 1题目链接这道题的特殊处理方法:因为查询是对于区间的, 那么我们把一个查询操作转换为两个前缀和的查询, 只不过这两个查询的系数不同, 右值的前缀和是1 左值的前缀和是-1, 这样应用在答案上得到时候就是相当于前缀和做的区间查询。对于操作的记录主要有两个维度, 第一个是修改的时间;第二个是修改的位置和值, 那么做法是我们函数中任何时候基于时间维度排序, 因为cdq是递归的, 那么在递归回来之后我们要保证左边一半的时间维度全部比右边一半的时间维度小, 那么也就是让左边的所有点

2020-08-23 09:45:40 119

原创 最优贸易 最短路 图论

最优贸易 最优贸易这个题不会做肯定就是因为你想得太麻烦了.简单来说每一个城市有指定的价格,那么最大的限制就是哪些点之间可以相互流通的问题了.我们这样思考:我要知道每一个节点能够拿到来自其他的城市的最低的买入的价格是多少.怎么做呢? 想象我们用bfs做广度增广,每一次增广我们都拿着当前节点的可以得到的最低的买入价格去增广,如果下一个点的买入价格可以更低,那么很明显,下一个节点的买入价格在记录的时候肯定不能把当前更新给它,就是要保留目标节点的买入价格作为目标节点增广的买入价格.比如: 我们已知从1

2020-08-02 22:18:32 119

原创 Telephone Lines 最短路 牛客

Telephone Lines Telephone Lines题意:给一个图,指定起始和终止,可以让路径中的k条边的费用免费,问最小的费用是多少.即求最小第k长的边.用dp是一种做法:dp[ i ] [ j ] 表示从起点到达第i个点, 让这个路段中的最长的j条边免费,所花费的费用那么根据跑bfs的时候就是下一个点的编号时, 遍历j的值, 让j个路段免费,这个值的转移可以通过当前点的dp 的数值直接转移得到.#include <bits/stdc++.h>using namesp

2020-08-02 22:01:47 224

原创 P3159 [CQOI2012]交换棋子 网络流拆点造图

P3159 [CQOI2012]交换棋子洛谷P3159.分析:1:把白棋看作空的位置,那么只需要 移动黑棋子就行了. 在一个黑棋的移动路径中,除了第一个位置和最后一个位置,其余位置都是小号 两次交换次数. 因为一次从其他地方走到当前,一次从当前再走出去.共两次.​2: 如果当前点起始和终止都有棋子,那么相当于这个位置没有棋子. 因为考虑这个点的棋子不移动,那么其他棋子的移动都要绕着这个棋子过.显然这个棋子相当于没有移动过, 也就不需要考虑. 再如果, 别的棋子需要移到当前的棋子,而当前的棋子最终要落

2020-07-31 20:45:06 197

原创 最小路径覆盖与二分图的理解

情况是这样的, 告诉点与点之间的可以到达的关系,要问,利用这些到达的关系,最少能用几条路径,使得每一个点只被经过一次.思路: 二分图上跑网络流:即最大的二分匹配思路这样的情况 我把它叫做最大路径覆盖,即每一个节点与自己的影子节点直接链接,从S到T的流量能够最大,与节点的数量一致.那么我要求最小的路径覆盖,我可以基于上图这个最大的路径覆盖,方案是上图的每一条路径其实都是一个独立的点形成一个路径,那我的思路就是把这些个独立的点尽量打包形成尽量少的单元.删除所有点与自己影子节点的链接, 再画如图的边,

2020-07-31 13:03:50 341

原创 P4313 文理分科 详细理解

P4313 文理分科网络其他地方看到的原话:在说这道题之前,让我们先思考一下最小割的性质.最小割就是使得s到t割掉的最小边的容量,割过之后,所有的点要么与s联通,要么与t联通.这样的性质,即要么与s有关系,要么与t有关系的性质(非黑即白)就是典型的最小割的题目.网络流的割的意思是把整体的点分为两个部分,一个部分是只与S有关联,另一个部分的点只与T有关联,(因为割过之后不可能有一个点既能够与S连也能够与T连,否则的话还是联通的)所以这题的第一步先把每一个点都与S和T分别相连,含义是对于每一个点而言,这个

2020-07-29 11:51:49 357

原创 [2020HDU多校]Total Eclipse HDU 6763

[2020HDU多校]Total Eclipse HDU 6763题意:给定一堆点, 点有权值, 每一次操作可以选择一些点, 要求这些点是相互连通的, 选完之后每一个点的权值减少1, 要求点的权值最终都变成0. 即**变成0的点不能再被选择(否则就减一出现负值了).**问操作最少需要多少次.直观分析: 这里很抽象,看不懂也没事,反正解法和这个有很大的区别.从小到大减小: 那么我可以选择尽量大的范围,即刚开始每一个有权值的联通的点都选中, 然后减去选中的当中最小的权值(因为每一次都对这些点减去1最终效

2020-07-24 22:23:02 249

shangpinhui_0415-mas

shangpinhui_0415-mastbybhh

2021-12-18

NexonLauncherSetup_SEA

嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻

2021-12-17

Feishu-win32_ia32-5.1.8-signed.exe

Feishu-win32_ia32-5.1.8-signed.exe

2021-12-17

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除