_Gion

True Vegetable

「置顶」OI 注意事项

二元组如果需要二维比较就使用pairpairpair,不需要就手写结构体,不然效率会差很多 平衡树输出之前记得pushdownpushdownpushdown todo

2018-09-22 12:42:40

阅读数 59

评论数 0

「置顶」NOI To do list

未学习、待重学及待刷题的知识点 Treap / Splay / 替罪羊树 最大流 2-SAT 匈牙利算法 二分图最大匹配 拉格朗日插值 FFT 快速傅里叶变换 NTT 数论变换 Miller-Rabin Pollard Rho BSGS exBSGS * exLu...

2018-08-29 21:01:40

阅读数 80

评论数 0

qwq

不用CSDN了,用CNBlog(qwq

2019-02-18 20:21:15

阅读数 146

评论数 0

「UVA 11475」Extend to Palindrome「后缀数组」

这题算是经典题了,可以用KMP/Manacher/SAKMP/Manacher/SAKMP/Manacher/SA做 这里丢上一个代码最长的做法:后缀数组 做法是将原串sss翻转得到s′s's′,将s′s's′接到sss后做SAS...

2018-12-05 11:54:53

阅读数 59

评论数 0

「JLOI 2015」城池攻占「左偏树」

对每个点维护一个左偏树(小根可并堆),一开始把骑士插入 然后dfs,从下往上把骑士送上去 每次在取左偏树的堆顶找死亡骑士,不断pop,直到堆顶骑士不会死亡为止 然后最后在根上打修改懒标记(加或乘) #include <cstdio&gt...

2018-10-28 22:14:09

阅读数 88

评论数 0

「BZOJ 1251」序列终结者「Splay」

像线段树那样,维护一个懒标记就行 #include <algorithm> #include <cstdio> using namespace std; namespace Splay { const in...

2018-10-28 17:21:19

阅读数 47

评论数 0

「SDOI 2015」约数个数和「莫比乌斯反演」

题意 设d(x)d(x)d(x)为xxx的约数个数,求∑i=1n∑j=1md(ij)\sum_{i=1}^{n}\sum_{j=1}^{m}d(ij)∑i=1n​∑j=1m​d(ij)。 题解 首先有个公式:d(ij)=∑x∣i∑y∣j[gcd(x,y)=1]d(ij)=\sum_{x|i}...

2018-10-27 10:41:13

阅读数 91

评论数 0

「学习笔记」斜率优化

「HNOI 2008」玩具装箱TOY 首先O(n2)O(n^2)O(n2)做法是显然的,使用前缀和然后暴力枚举转移 dp[0] = 0; for(int i = 1; i <= n; i ++) { dp[i] = 1LL &...

2018-10-26 21:28:25

阅读数 78

评论数 0

「NOIP 2015」运输计划「树链剖分」

这题就没往二分上想,直接使用线段树+树剖大暴力 做法就是枚举每一条边(u,fa[u],w)(u, fa[u], w)(u,fa[u],w),求出删除这条边后的答案。 假设已经求出了两个数组past[u],nopast[u]past[u], nopast[u]past[u],nopast[u]分别表...

2018-10-26 13:13:27

阅读数 45

评论数 0

「学习笔记」网络流题单

[ZJOI 2009][\text{ZJOI 2009}][ZJOI 2009] 狼和羊的故事:注意题意是说把狼和羊完全分开,不能连通。可以看出是最小割,暴力把所有相邻结点建边,把SSS连到羊,狼连到TTT,Dinic\text{Dinic}...

2018-10-17 13:18:09

阅读数 44

评论数 0

「学习笔记」容斥原理及其应用

错排问题 HDU 1465 #include <cstdio> long long dp[21]; int main() { dp[0] = dp[1] ...

2018-10-03 15:54:27

阅读数 52

评论数 0

「ZJOI 2005」午餐「DP」

题目传送门 题解 贪心+DP\text{DP}DP,思想巧妙。 首先确定先后顺序,不确定站在哪边。贪心策略是按吃饭时间从大到小排序,证明如下: 设按某个顺序站,第AAA个人打饭时间为aaa,吃饭时间为bbb;第B(A<B)B(A&amp...

2018-10-02 21:30:06

阅读数 40

评论数 0

「学习笔记」C++与C++11的语法技巧

随机打乱序列与生成随机数。 #include <algorithm> //random_shuffle #include <cstdio> #include <random&amp...

2018-10-02 12:23:06

阅读数 46

评论数 0

「学习笔记」Fast Fourier Transform 快速傅里叶变换

快速傅里叶变换(Fast  Fourier  Tr...

2018-10-01 21:29:11

阅读数 678

评论数 0

「SCOI 2010」连续攻击游戏「并查集」

题目传送门 题解 巧妙的并查集做法。 把每个装备的两个属性a,ba,ba,b看成边(a,b)(a,b)(a,b),会形成一些连通块 如果连通块大小为kkk,无环(树),答案是k−1k-1k−1,有环就是kkk 考虑如何合并两个连通块。 合并并查集x,yx,yx,y,若x̸=yx\not...

2018-09-30 22:38:53

阅读数 114

评论数 0

「SCOI 2014」方伯伯的 OJ「动态开点线段树」

题目传送门 备注:洛谷,2018/9/26,此题题面有误,见讨论。 题解 动态开点线段树。 线段树的叶子的结点有个值,vvv,它表示这个位置上的人编号是多少。 我们记录两个变量lb,rblb,rblb,rb表示当前位置的最小值和最大值。 每次把一个人提到第一时, 把他从原位置删除,放到lb−1lb...

2018-09-26 19:25:07

阅读数 77

评论数 0

「BJWC 2012」冻结「分层图+最短路」

题目传送门 题解 分层图是一种不错的技巧。对于这题来说,把图复制成k+1k+1k+1份,分别命名为0,1,...,k0,1,...,k0,1,...,k层。第iii层的含义就是已经用了iii次加速魔法。 读入一条边,每层连双向边,层与层之间,底层往上层连权值减半的单向边,单向意味着只能上不能下。 ...

2018-09-24 13:38:50

阅读数 41

评论数 0

「USACO13OPEN」Photo「单调队列」

题目传送门 题解 看起来是差分约束,但是USACO出题人又卡SPFA了! 这里有一种巧妙的DP方法。 l[i]l[i]l[i] : 完全在iii左边的区间,左端点的最大值 (不能不放) r[i]r[i]r[i] : 包含iii的区间中,左端点的最小值−1-1−1 (只能放111个) f...

2018-09-23 15:35:56

阅读数 106

评论数 0

「学习笔记」初赛中的排序与主定理

排序 稳定性的含义:如果数组中存在两个不同位置元素x=yx=yx=y,排完序后原来的x,yx,yx,y的相对位置发生了改变,则称这种排序是不稳定的(发生无意义的变换). 排序算法 最坏复杂度 平均复杂度 是否稳定 插入排序 O(n2)O(n^2)O(n...

2018-09-22 16:24:53

阅读数 132

评论数 0

「清华集训 2012」模积和「数论分块」

题目传送门 题意 ∑i=1n∑j=1m(n  mod  i)(m  mod  j),i...

2018-09-21 13:26:52

阅读数 58

评论数 0

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