zP1nG

Only the Paranoid Survive.

排序:
默认
按更新时间
按访问量

【模板】回文自动机(指针版)

回文自动机详解参见:Palindromic Tree——回文树【处理一类回文串问题的强力工具】 bzoj 3676 #include<bits/stdc++.h> #define N 300005 using namespace st...

2018-05-23 20:20:52

阅读数:76

评论数:2

Markdown编辑公式

拿小本本记下来。。。

2017-12-27 21:00:53

阅读数:201

评论数:0

【NOIp 2017】小凯的疑惑(置顶)

无数人被小学奥数坑到家破人亡,我也不例外。 在此发博文告诫自己无论什么题目都要冷静思考,简单的题目不要想复杂,沉着冷静才能做到最好。 我爱OI,自然要爱屋及乌。我爱小学奥数。#include<bits/stdc++.h> using namespace std; int main(...

2017-11-27 09:26:40

阅读数:4046

评论数:1

【bzoj 2383】ballons(单调栈)

传送门biu~ 对于一个气球i,如果它左边的某个气球j的右边有比j大的气球,显然j不会对i的大小产生影响。所以能够影响气球i的大小的气球集合是坐标递增半径递减的。 我们把这些气球放在一个栈里,从栈顶的气球开始考虑其对第i个气球的影响。第i个气球的半径初始化为上限ri,然后用栈顶的气球更新半径。...

2018-06-26 11:21:52

阅读数:66

评论数:0

【bzoj 5390】F.糖果商店(背包DP)

传送门biu~ #include&amp;lt;bits/stdc++.h&amp;gt; #define inf 1000000000000000ll #define N 105 #define M 100005 using namespace std; int n,m...

2018-06-25 16:45:28

阅读数:124

评论数:0

【bzoj 1913】signaling 信号覆盖(计算几何)

传送门biu~ 考虑贡献。我们可以发现,对于能组成凸四边形的四个点,它们对答案的贡献是2;对于能组成凹四边形的四个点,它们对答案的贡献是1。问题就转化成了计算凹/凸四边形的数量。 因为凹四边形和凸四边形的数量和是确定的C4nCn4C_n^4,而凹四边形还有着“有中心点”这个性质,所以我们选择计...

2018-06-24 08:44:53

阅读数:48

评论数:0

【bzoj 2654】tree(参数二分+最小生成树)

传送门biu~ 因为要固定白色边的数量,所以我们可以让“选取一条白色边”有一个代价。显然,随着“选取一条白色边”代价的降低,最小生成树上白色边的数目一定是不降的。因此我们可以二分这个代价,每次验证时让所有白色边权加上这个代价,然后跑最小生成树,最后再将这些代价减去。 因为保证数据合法,所以假设...

2018-06-24 08:26:49

阅读数:77

评论数:0

【bzoj 5128】寻找母串(区间dp)

传送门biu~ 枚举长度是|T||T||T|因子的子串ttt,并进行判断。 设fi,jfi,jf_{i,j}表示子串T[i,j]T[i,j]T_[i,j]能否合法由t产生。 转移是:要么再末尾加长度为|t||t||t|倍数的区间,要么匹配1位t(j−i)mod|t|t(j−i)mod|t...

2018-06-23 17:29:07

阅读数:57

评论数:0

【bzoj 5127】数据校验(乱搞)

传送门biu~ 可以发现,如果区间[l,r]满足条件,那么它的长度为2的子区间一定满足条件;如果所有长度为2的子区间满足条件,那么这个区间也一定满足条件。所以只需要判断[l,r]之间是否有不满足条件的长度为2的子区间即可,用前缀和乱搞一下就可以了。 #include&amp;lt;...

2018-06-23 17:25:08

阅读数:51

评论数:0

【bzoj 3339】Rmq Problem & 【bzoj 3585】mex(可持久化线段树)

传送门biu~biu~ 两道题区别只在于ai的范围,显然&amp;gt;=n的那些ai都是没有意义的,因此两题相同。 权值线段树上的i点记录数字i的最右出现位置,查询区间[l,r]即为查询第r棵线段树上最小的i满足i最右出现的位置 #include&amp;lt;bits/s...

2018-06-08 16:11:11

阅读数:51

评论数:0

【bzoj 3744】Gty的妹子序列(分块+树状数组)

传送门biu~ 默认按size=n−−√size=nsize=\sqrt{n}分块(求导个屁)。对于每个询问,有三个部分: ①对于大块之间形成的逆序对, 因为求长度为n的序列的逆序对数可以用树状数组在O(nlogn)O(nlog⁡n)O(n\log n)的时间复杂度内完成,所以可以在O(...

2018-05-30 20:25:06

阅读数:48

评论数:0

【bzoj 2820】YY的GCD(莫比乌斯反演)

传送门biu~ 参考博客:莫比乌斯反演 #include&amp;lt;bits/stdc++.h&amp;gt; #define N 10000000 using namespace std; int T,n,m,prime[N+5],mu[N+5],f[N+5]; bo...

2018-05-30 14:46:15

阅读数:49

评论数:0

【bzoj 3277】串 & 【bzoj 3473】字符串(后缀自动机)

传送门biu~biu~ 对于所有串建广义后缀自动机,沿着父亲指针不断向root走,把路径上的节点计数+1。为了避免出现重复,记录每个节点最后一次被哪个串访问,串在走的时候如果遇到了这个串已经访问过的节点就停止。 可以在parent树上dp出这个点到root路径上有多少子串出现了k次以上作为答案...

2018-05-23 13:41:32

阅读数:59

评论数:0

【bzoj 5329】战略游戏(圆方树+虚树)

传送门biu~ 对于原图建圆方树,每次询问在圆方树上建虚树,树上的每一个圆点都符合条件,统计圆点个数即可。 #include&amp;amp;amp;lt;bits/stdc++.h&amp;amp;amp;gt; #define N 200005 using namespac...

2018-05-23 07:51:46

阅读数:144

评论数:0

【bzoj 2260】商店购物 & 【bzoj 4349】最小树形图 (朱刘算法)

传送门biu~biu~ 只需要考虑第一次购买的顺序,然后剩下需要买的都按最小价格买。设一个虚拟节点0,原价购买i物品就从0向i连边,u对v有优惠关系就从u向v连边。跑朱刘算法即可。...

2018-05-18 15:06:39

阅读数:65

评论数:0

【bzoj 2795】A Horrible Poem(字符串哈希)

传送门biu~ 如果一个长度为l的串s的循环节为n,那么需要满足n是l的约数且s[1,l-n]=s[1+n,l]。 所以对于每一个询问,枚举每个质因子,用哈希判断字符是否相等。 #include&amp;lt;bits/stdc++.h&amp;gt; #define N 5...

2018-05-18 14:48:18

阅读数:62

评论数:0

【bzoj 3555】企鹅QQ(字符串哈希)

传送门biu~ 枚举不看字符串的每一位,用字符串哈希匹配。但是单模会WA,改成双模才能过。 #include&amp;lt;bits/stdc++.h&amp;gt; #define N 30005 #define base1 137 #define base2 19260...

2018-05-16 20:29:00

阅读数:46

评论数:0

【bzoj 3245】最快路线(最短路)

传送门biu~ dis[i][j]代表到第i个点速度为j时需要的最少时间,spfa转移即可。 #include&amp;amp;amp;amp;amp;lt;bits/stdc++.h&amp;amp;amp;amp;amp;gt; #define pa pair&...

2018-05-14 11:40:49

阅读数:103

评论数:0

【bzoj 2653】middle(二分+可持久化线段树)

传送门biu~ 先二分答案,对于二分出的答案x,在序列中把大于等于x的值改为1,小于x的值改为-1,那么求区间[a,d]包含[b,c]的最大连续子段和,如果大于等于0说明答案大于等于x,如果小于0说明答案小于x。可以证明经过二分最后得到的答案一定在区间中。 我们可以对每个x序列建一棵线段树维护...

2018-05-14 11:35:06

阅读数:52

评论数:0

【bzoj 3990】排序(DFS)

传送门biu~ 显然一个操作序列是否合法与操作序列的顺序是无关的,所以我们只需要知道某种操作选不选即可。可以从小操作向大操作枚举,这样一个合法的操作序列对答案的贡献为选择的操作数的阶乘。 对于第i种操作我们将序列分成2n−i段2n−i段2^{n-i}段,每段长度2i2i2^i。找到序列中不递增...

2018-05-02 18:24:49

阅读数:64

评论数:0

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