BZOJ 600题刷题计划

还是觉得CSDN比较方便啊! 自从上周南昌打铁回来后,整个人都是懵逼的状态,思考了好久得出来的打铁结论就是,做题太少了。 于是我在@hzwer的博客里找到了BZOJ 600题列表,打算开启我的BZOJ 600题刷题计划。 我也不知道我能刷多少,反正就一直刷一直刷就好了吧QAQ。 嗯,大家一起加油吧...

2019-06-05 16:30:44

阅读数 65

评论数 0

【特大消息】博客换地址啦!

新地址在这里啦 界面好看了很多,文字显示内容也增加了很多,方便了大家的阅读,不过增加了我的更新博客的难度了qwq,不过!为了追求美!笔者决定不畏艰险,还是把最好的送给大家! 这里以后就不会再更新啦! ...

2019-03-07 18:23:19

阅读数 84

评论数 1

发布全新视频题解啦!

好消息好消息!鉴于博主文采极差,遂和队友们一起开了一个视频题解! 地址戳这里戳这里! 从读题到AC的全过程哦! 我们会坚持日更的,如果有想看的题目,也可以评论留言私信告诉我们! 不要忘了随手点个关注哦(呲牙) ...

2019-01-15 14:14:40

阅读数 58

评论数 0

Hello World

我是一名2017级NUISTer,去年(2017年)十一月份接触算法,从此入坑qwq,现在还是菜鸡一只,坚持训练,好吃懒做,擅长找文本bug(算法很菜,队友带我躺)。 以后不知道该干嘛了我就会来更新博客,分享一下最近的学习和最近的心情。(如果没有更新,那么就说明我知道自己要干嘛(滑稽))。  ...

2018-06-19 22:03:31

阅读数 87

评论数 0

【BZOJ2330】差分约束

BZOJ2330 题目问的就很差分约束。 太裸辣! 唯一需要注意的就是分的糖果要>=1。 #include <bits/stdc++.h> #define INF 0x3f3f3f3f using namespace std; const int maxn...

2019-08-21 17:02:06

阅读数 1

评论数 0

【BZOJ1040】基环树dp

BZOJ1040 每一个人会痛恨一个人,将痛恨的那个人设为父节点,显然每一个人只有一个入度。 分析(画图)可知,这个题目的模型是一个基环树森林。 我们只需要随便在基环树的环上取一个边,对边的两边的节点分别树形dp。 (0) 对于一个边,他有两个点,这两个点不能同时取。 (1) 对于一个边,一个点为...

2019-08-21 16:30:43

阅读数 1

评论数 0

【BZOJ1877】最小费用流

BZOJ1877 乍一看以为是一个dp,其实分析之后可以发现,每个点每个边只能走一次,所以将点拆开,将流量设为1,跑MCMF这题就没了… #include <bits/stdc++.h> #define INF 0x3f3f3f3f const int maxn= 20...

2019-08-21 13:15:22

阅读数 1

评论数 0

【BZOJ1007】下凸壳

BZOJ1007 显然,画图可知,最后看见的线段一定组成了一个下凸壳。 而且从左向右的线段的斜率一定是递增的。 所以我们对斜率排序,(由大到小和由小到大都无所谓),然后通过初中数学知识计算一下交点,用单调栈维护可以看见的部分即可。 #include <bits/stdc++.h&am...

2019-08-21 12:53:51

阅读数 1

评论数 0

【LCT裸题】

题目均来自ZZQ博客:LCT裸题泛做 BZOJ2049 非常裸的LCT,连边断边询问连通性,并查集也可做。 (有点卡常) #include <bits/stdc++.h> #define sc(n) scanf("%d",&n) #d...

2019-08-20 15:05:17

阅读数 5

评论数 0

【Link Cut Tree 模板】洛谷P3690 动态树 LCT 模板

题目戳这里 本模板是从网上复制来的。 操作如下: access(x,y),将x到y的路径连上实边,其他儿子都变成虚边。 link(x,y),将x和y连起来。 cut(x,y),将x和y断开。 对于修改操作,若将点x的权值修改成y,只需splay(x)然后v[x] = y即可。 findroot(x...

2019-08-20 13:50:30

阅读数 4

评论数 0

【康托展开 & 逆康托展开】求一个排列在全排列中的排名 洛谷P5367 & 给定一个排名求排列

题目在这里 求一个排列在全排列中的排名。 好像是一个比较经典的问题,类似的问题还有,求子串的排名等等 我在胡说什么 康托展开说白了就是一个hash方法。 方法如下: ans = 1+sigma(a[i]*(n-i)) 例如:对于一个排列 1 2 3 4 5 其进制变换后就是 (0 0 0 0 0)...

2019-08-20 09:50:52

阅读数 4

评论数 0

【求逆矩阵】模板 洛谷P4783

模板题目 输入一个n*n的矩阵,若可逆,求其逆矩阵。 #include<bits/stdc++.h> using namespace std; const int maxn = 405; const int mod=1e9+7; int n; struct Matrix...

2019-08-19 21:26:28

阅读数 6

评论数 0

【牛顿迭代法求函数的一个零点】模板

见代码:注释也很明了 /* 牛顿迭代法求方程的一个零点 设f2(x)为f(x)的导数 任取x,方程的零点即为x=x-f(x)/f2(x) 循环几百次就可以得出一个零点。 */ #include <bits/stdc++.h> using namespace std; ...

2019-08-19 21:11:01

阅读数 4

评论数 0

【Gauss消元】求线性方程组的解 洛谷P3389

题目戳这里 高斯消元模板 输入格式如下: n a1 a2 a3 … an b1 共n个线性方程构成的方程组 输出:ans[i]表示x[i] /* Gauss消元 给定线性方程组 a11*x1+a12*x2+...+a1n*xn=b1 a21*x1+a22*x2+...+a2n*xn=b2 ... ...

2019-08-19 21:03:46

阅读数 5

评论数 0

【半平面交】洛谷P4196 模板

题目在这里 题目求解的是很多多边形的交的面积。 其实很多多边形就是很多线段,由于是逆时针给出的点,所以也就是很多线段的左半平面。 故直接半平面交即可。 求出凸壳后用三角剖分求出面积即可。 本代码是复制洛谷题解里面的,当作模板使用。 #include <bits/stdc++.h&am...

2019-08-19 20:19:29

阅读数 6

评论数 0

【求平面上最远点对】旋转卡壳模板 POJ2187

题目戳这里 Attention 本文不涉及旋转卡壳的原理和思路,想看原理和思路的请寻找其他的博客。 求平面上最远点对,显然,最远的点对一定在凸包上。 所以我们先求一个凸包。 然后旋转卡壳就可以求出来最远点对了。 旋转卡壳说白了就是逆时针枚举凸包上的边和相对点,然后更新答案即可。 #include ...

2019-08-19 15:26:14

阅读数 6

评论数 0

【Graham Scan 求凸包】洛谷P2742 模板

模板题目在这里 Attention 本文不会讲解任何Graham Scan算法的思路和过程。 p[i]表示第i个点。 H[i]表示凸包上第i个点。 tot表示凸包上最后一个点的标号。 注:tot从0开始。 cp是向量叉积 dist是两点之间欧几里得距离 #include <bits/...

2019-08-19 13:34:19

阅读数 7

评论数 0

【hihoCoder 1457】SAM+拓扑排序

题目在这里 题意就不赘述了。 分析: 设cnt[i]表示状态i共有多少串。 那么sum[i]表示状态i的贡献。 那么答案就是sigma(sum[i]) cnt[i]怎么求呢,建立完SAM后对于每一个状态建立拓扑图。 且若在拓扑图上有状态x到状态y的边。 然后拓扑排序的时候记录cnt[i],具体就是...

2019-08-18 20:48:02

阅读数 5

评论数 0

【hihoCoder 1449】后缀自动机 SAM

题目很好懂 分析: 类似于洛谷P3804,这个题目只需要用一个map在dfs parent tree的时候记录每个长度的siz的最大值,然后直接输出就做完了。 #include <bits/stdc++.h> using namespace std; const int...

2019-08-15 11:51:16

阅读数 5

评论数 0

【不同子串的个数】后缀自动机 SAM

题目 感觉这个才应该是后缀自动机的模板题啊 由定义可知,字符串中不同子串的个数就是sigma(len[i]-len[fa[i]]) 如果由定义没看出来的话,就可以画一画,如果还是没看出来的话,那就背下来吧qwq 就是个板子 #include <bits/stdc++.h&gt...

2019-08-15 11:40:42

阅读数 6

评论数 0

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