自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

KKiseki的博客

路才走到一半,而那个夏天却离我远去了

  • 博客(138)
  • 收藏
  • 关注

原创 hdu5730(FFT+多项式求逆)

(最近在班上好无聊,总感觉同学都好拽,也没有能说很多话的小姐姐,而且都很爱学习。老师也很死板,诸多要求。但我还是我,毕竟看过那么多治愈番。) 终有一天会降临,只属于我的苍蓝天使!稳定的题面传送门题意是这样的,长度分别为1..n的棒子各有a[i]种,每种都有无限条,问组成长度为n的大棒子有多少种方案,mod313。设f[i]表示长度为i的方案数,根据题意f[0]=1,考虑dp。 枚举

2017-09-05 16:52:06 414

原创 bzoj3625(NTT+多项式求逆+多项式开根)

这题是我搜NTT搜到的,当时就看到“多项式开根”这样的标题,于是找到了L-leader的博客,补了下幂级数的东西,用两节数学课学会了。题面我再看题解,好像都是教我怎么开方,求逆的,然后又拖了几天。终于昨晚睡不着,突然就想到了。。。先介绍一下生成函数。 简单的说,就是一个数组a[0..n],可以生成一个多项式函数(幂级数)f(x)=∑i=0na[i]∗xif(x)=\sum_{

2017-09-02 22:18:13 1136

原创 bzoj2959(LCT+缩点)

题面这是一篇来自另一条世界线的总结(昨晚我明明写完了,也交上去了,然而今天不见了)。题意就是给你n个点,三个操作: ①将点A,B连一条无向边 ②改变点A的权值 ③问你从A到B的路径的权值和,其中边可以重复一个方向走,点可以重复走但权值只算一次。由于是一个无向图,可能会有环,根据题意,环上的点是可以全部走完,而且是最优的,故可以缩点。缩完之后剩下一棵树。 倘若只有③,LCA

2017-09-02 08:56:38 286

原创 bzoj4555(数学推导+画柿子+NTT)

题面 今天学了多项式逆元,找到了这题。但是本蒟蒻觉得这题和逆元并没有什么关系,和逆元有关的题解也看不懂。。。 题目要你求这样一个函数,结果对一个费马素数取模。 S(i,j)为第二类斯特林数,题目还恶意地给出了递推公式。。。经过一顿百度,知道了第二类斯特林数是这样的 含义是将n个不同的元素拆分成m个集合的方案数,显然当m>n时,S(n,m)=0。所以原式首先可以写成 ans

2017-08-28 21:12:36 378

原创 bzoj4516(后缀自动机+map)

题面 题意就是不断往一个空串里插入字符,输出每次插入后有多少个不同的字串。看到它这个是在线插入字符,我就只能想到后缀自动机了。 后缀自动机是以Right集为状态的数据结构。Right集要么不交要么包含构成树形结构,且还能证明状态数是线性的。 每个状态代表了一些互为后缀的字串,且有两个属性,Min和Max,表示这个状态代表的字串的长度区间,显然Max-Min+1就是这个状态的贡献。这里

2017-08-28 14:16:14 331

原创 BZOJ4836(CDQ分治+FFT(NTT会T))

题面 题目定义了一种奇怪的运算,是这样的 还给出了两个数组A,B,数组长度和元素大小都有多个询问,给出一个k,问有多少对(i,j)使得 Ai opt Bj = k。如果 x opt y = x+y,那么显然是一个桶状数组的卷积,FFT可以解决 若 x opt y = x-y,根据FFT题的套路,把一个数组反过来,发现它依然是个卷积。而题目把运算按x与y的大小关系分成了两种,两种都

2017-08-26 20:33:38 418

原创 洛谷P3810(三维偏序,CDQ分治果题)

题面 最近米娜都在学cdq分治,看到题都直接想CDQ,还讲得头头是道,所以本蒟蒻也水一水。找到bzoj的一题果题,居然还是权限的,但我还是找到了本题。个人理解,有一个修改和查询的序列,CDQ就是可以离线的条件下,用logN的复杂度,把动态的问题转化为静态的问题,即把边修改边查询改为先修改再查询。主要思想大概是这样的,有一个询问和查询的序列区间[L,R],二分一个mid,先处理子问题[l,

2017-08-24 22:23:28 460

原创 BZOJ3514(LCT+可持久化线段树)

题面 题意:N个点M条边的无向图,询问保留图中编号在[l,r]的边时图中的联通块个数,强制在线。这是一道LCT好题吧,(我觉得标签有两个或以上,代码很长但还能1A的题就是好题…)。连通块只要维护出一棵树便能保持连通,而LCT处理图问题时的精髓正在于形成环时要把环上的哪条边Cut掉。假设现在来了一条编号为i的边,考虑所有r=i的询问。 若i这条边加进来后没有形成环,显然对于所有l,有

2017-08-17 20:43:40 362

原创 BZOJ1877(最小费用最大流+拆点)

题面 题意就是有N个点的图,边有费用,点和边的容量都是1 ,问源到汇的最大流及最小费用。就是果的最小费用最大流。这里用连续最短路算法。不断用SPFA寻找增广路,并沿着其增广。点有容量就把它拆成入点与出点,入点向出点连一条边限制这个点的容量。做这题是因为我在##之星的比赛中,看到费用流就有点慌,直接复制以前的程序,现在就当复习一下代码吧。#include #include #i

2017-08-17 20:37:26 362

原创 bzoj4448(LCT)

题面 题意是给你一棵树,在每个时刻标记一个点,或者问一条路径有多少个点在C时间前被标记了及路径长度。这题好在可以离线,按时间排序后就取消了时间限制,操作变成标记一个点,询问就是问一条路径有几个点被标记了及路径长度。不会LCA,歧视树剖的我就水了棵LCT。单点标记就把该点Splay到根,然后标记。 路径询问就分别Evert和Access两个端点,把路径放到一棵Splay上,在根上就可以得

2017-08-17 11:26:47 298

原创 BZOJ3992(NTT+DP+快速幂)

题面 题意是给你一个质数M,和一个元素都小于M 的集合,大小为S,用集合中的元素构成长度为N的序列(可以用重复的元素),使其乘积模M为x,问方案数,答案模479*2^21+1。 M这题一看就很套路,模数为费马素数,大概就和NTT有关吧。 先考虑简单的DP,设f[i][j]为长度为i的序列,乘积模M等于j的方案数 枚举k,有 f[i+1][j∗k模M]+=f[i][j]f[i+1][j

2017-08-17 09:29:08 373

原创 BZOJ3160(NTT+manacher)

题面 题目定义的回文序列,指的是以某个位置(可以为间隙)为对称轴,左右两端对应位置相等的序列。 比如在串baababbbb中, b__bab__b是一个回文子序列 给你一个仅包含’a’和‘b’的字符串,问有多少个非连续的回文子序列。我对回文的认识只有manacher,能求出所有的回文串,显然回文串是连续的回文子序列,并不属于答案,大概是要最后减掉的。那么原问题就变成了问原串有多少个

2017-08-16 16:52:48 315

原创 UVALive4671(FFT/NTT+后缀自动机/哈C)

题面 题意就是给你两个仅包含字符‘a’和‘b’的字符串X,Y,长度汉明距离指的是两个长度相等的字符串,对应位置有多少个不同字符。首先想下暴力的算法。 设X串下标为0-n,Y串下标为0-m,设F[i]表示X[i..i+m]与Y的汉明距离,很显然就是这样的: f[i]=∑j=0m[x[i+j]==y[j]]f[i]=\sum_{j=0}^m[ x[i+j]==y[j] ] 这条式子在看起

2017-08-16 15:56:51 614

原创 BZOJ4025(LCT+LCT+LinkCutTree)

题面 最近学CDQ分治,别人给了我这题,但我分治好菜,只会果题,既然是有加边删边的图论题,就考虑LCT吧,所以就有了这个标题。题意是给你N个点,有加边和删边,输出每次操作后它是不是一个二分图。常识告诉我们,二分图的充要条件是不存在奇环,而LCT的难点就是在出现环的时候的处理。假如加入了一条边,出现了奇环,那么是到这条边被删前,这个图都不是二分图吗? 显然不是,是到这个环有一条边被删

2017-08-15 20:17:19 335

原创 HDU6080(很水的计算几何+floyd)

题面 题意就是平面上有n个村庄和m个点,在m个点中选最少的点使得这些点构成的凸包能包含n个村庄。对于看到计几就是弃的选手,去漫展时把其他题都和别人讨论了出来了,只有这题没想过。分析: 在m个点中选取点A和点B,对于向量AB,若n个村庄都在其左侧,这条边才可能是最终凸包上的向量。 考虑所有可能是凸包上的向量,问题就变成了选取最少的向量,使得其构成一个环,就是floyd了。具体是这样

2017-08-14 21:44:59 310

原创 hdu6109(并查集+启发式合并)

题面 题意就是有n个数,不断给你条件,如i=j或i!=j 你要把条件扔进一个栈里。 若出现一个条件和栈里的条件出现冲突 输出栈的大小+1&&清空栈等于是满足传递性的,故等于关系可以用并查集维护,同一个集合的表示它们都相等。 若出现不等关系,且它们在同一个集合里,则冲突,否则这两个点连一条边如果来了一个相等关系,且它们所在的两个集合之间有连边,则冲突,否则合并这两个集合。具体实

2017-08-14 16:37:06 618 1

原创 HDU6118(费用流水题)

题面 题意就是有n个点,每个点可以生产和销售商品,产量和销量有限制,生产商品有代价,销售有收益。 这n个点还构成一个图,商店可以在图上流,而且是单位流量有费用。 作为一个图论只会网络流的选手,这题就是显然的费用流了。 源向每个点连边,容量为生产的最大值,费用为生产的费用 每个点向汇连边,容量为销量的最大值,费用为负的价格 然后再把图上的边连好,容量为oo,费用为长度 用连续最短路算法

2017-08-13 20:28:49 265

原创 bzoj3676:回文串(manacher+SAM的parent树上倍增)

模拟考是碰到的,以前听过但没有做过,当场推出来了。 题面 题意就是给你一个串,定义字串的得分为长度*出现次数,问所有回文串中的最大得分。 题目分析:回文串当然首推manacher算法,只有当右指针右移时才会出现本质不同的回文串,得到该串的l和r,然后就是统计该串出现次数,很水的的我只会SAM了。 SAM的每个状态的所有串互为后缀,还记下

2017-08-11 14:50:25 515

空空如也

空空如也

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

TA关注的人

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