摘要: 题解 传说中的……半标准杨表(行单调不增,列单调减) 如果N能整除M,我们把序列分成$\frac{N}{M}$段 然后里面要填K个1,显然我每一段必须填K个1,且可以构造出合法的序列,所以最少要填$K\frac{N}{M}$个1 我们列出一个K行$\frac{N}{M}$列的矩阵,$(i,j)$表示阅读全文
posted @ 2018-12-13 13:45 sigongzi 阅读(2) 评论(0) 编辑
摘要: 题解 可以想一下保留一个长度为k的不降序列方案数是$f[k] (n k)!$ $f[k]$是有多少个长度为k的不降序列 我们去掉不合法的,一定是前一次操作的时候有一个长度为$k + 1$的不降序列,于是长度恰好为$k$的方案数就是 $f "k" ! f "k + 1" !(k + 1)$ $f[k]阅读全文
posted @ 2018-12-12 17:46 sigongzi 阅读(5) 评论(0) 编辑
摘要: 题解 区间dp,先离散化所有价值 $f[i][j][k]$表示$[i,j]$区间里最小值为$k$的价值最大是多少 只考虑$i =k] + cost(k) + f[h + 1][j][ =k])$ 构造答案的时候通过记录每个点前一个转移点来递归即可 代码 cpp include define fi f阅读全文
posted @ 2018-12-12 14:21 sigongzi 阅读(4) 评论(0) 编辑
摘要: 题解 $f(n)$的取值范围最多$9^2 18$ 直接枚举判断就好 代码 cpp include define fi first define se second define pii pair define pdi pair define mp make_pair define pb push_b阅读全文
posted @ 2018-12-12 11:11 sigongzi 阅读(5) 评论(0) 编辑
摘要: 题解 和BZOJ4025挺像的 就是维护边权是时间的最大生成树 删边直接删 两点未联通时直接相连,两点联通则找两点间边权小的一条边删除即可 代码 cpp include define fi first define se second define pii pair define pdi pair 阅读全文
posted @ 2018-12-12 09:58 sigongzi 阅读(6) 评论(0) 编辑
摘要: 题解 lct维护一个结束时间作为边权的最大生成树,每次出现奇环就找其中权值最小的那条边,删掉的同时还要把它标记上,直到这条边消失 如果有标记则输出No 边权通过建立虚点来维护 代码 cpp include define fi first define se second define pii pai阅读全文
posted @ 2018-12-12 09:31 sigongzi 阅读(3) 评论(0) 编辑
摘要: 题解 我现在真是太特么老年了 一写数据结构就颓废,难受 这题就是用lct维护子树 ???lct怎么维护子树 这样想,我们给每个点记录虚边所在的子树大小,只发生在Access和link的时候 这样的话我们在这两个操作的时候顺带维护一下就好了 Access的时候加上新的虚儿子,减掉变成实边的那个儿子 l阅读全文
posted @ 2018-12-11 20:31 sigongzi 阅读(6) 评论(0) 编辑
摘要: 题解 老年选手的代码康复计划QAQ 这题又没一遍A,难受 每个节点维护这个节点子树内联通块的大小 维护所有节点轻儿子的$g[u][0]$表示所有轻儿子白色的联通块总数 $g[u][1]$表示所有轻儿子黑色联通块总数 更新一个点为新颜色的时候,是$g[u][c[u] ^ 1] + 1$再加上重儿子价值阅读全文
posted @ 2018-12-11 16:26 sigongzi 阅读(5) 评论(0) 编辑
摘要: 题解 给你一棵基环树,环长为奇数(两点间最短路径只有一条) 维护两点间路径最大子段和,支持把一条路径上的值取反 显然只要断开一条边维护树上的值,然后对于那条边分类讨论就好了 维护树上的值可以通过树链剖分,然后对于左右附加一个值和区间跑最大子段和 把变量名打错了orz,死亡 代码阅读全文
posted @ 2018-12-11 13:48 sigongzi 阅读(2) 评论(0) 编辑
摘要: 题解 练习一下带修改莫队 先按照左端点的块排序,再按照右端点的块排序,然后按照时间排序 每个修改操作存一下修改前这个位置的值就可以逆序操作了 代码 cpp include define fi first define se second define pii pair define pdi pair阅读全文
posted @ 2018-12-10 20:00 sigongzi 阅读(4) 评论(0) 编辑
摘要: 题解 又写了一遍KM算法,这题刚好是把最大最小KM拼在一起写的,感觉比较有记录价值 感觉KM始终不熟啊QAQ 算法流程大抵如下,原理就是每次我们通过减少最少的匹配量达成最大匹配,所以获得的一定是最大价值 1.我们先给左部点求一个期望大小,如果是最大KM,期望大小就是最大的那条边的权值,如果是最小KM阅读全文
posted @ 2018-12-10 17:36 sigongzi 阅读(3) 评论(0) 编辑
摘要: 题解 每种字符跑一遍FFT,得到$i + j = k$时匹配的个数(要÷2,对于相同位置的最后再加上 然后算出$2^{cnt[k]}$的和,最后再减去用mancher匹配出的连续回文子串的个数即可 代码阅读全文
posted @ 2018-12-10 14:11 sigongzi 阅读(4) 评论(0) 编辑
摘要: 题解 二分一个横坐标,过这个横坐标做一条和y轴平行的直线,相当于在这条直线上做区间覆盖,如果区间有交的话,那么答案是True 否则的话取两个不相交的区间,如果这两个圆相离或相切则不合法 否则看看相交的部分在二分的横坐标的左边还是右边,进行更新 代码 cpp include define fi fir阅读全文
posted @ 2018-12-10 13:06 sigongzi 阅读(4) 评论(0) 编辑
摘要: 题解 Ca Fe Zn Se 显然我们既然初始矩阵就能通过线性变换变成单位矩阵,则该矩阵一定有逆 没有逆输出NIE 而且因为这些向量两两正交,则表示一个向量的时候表示方法唯一 那么我们求一个逆可以求出这个矩阵消成单位矩阵的线性表示,再拿第二个矩阵和逆矩阵相乘可以得到第二个矩阵每个行向量用第一个矩阵的阅读全文
posted @ 2018-12-10 09:05 sigongzi 阅读(7) 评论(0) 编辑
摘要: 题解 我们考虑列出期望方程组,$dp[i][j]$表示在第$i$个点血量为$j$的时候到达$N$点的概率,所有的$dp[N][j]$都是1,所有$j define fi first define se second define pii pair define pdi pair define mp 阅读全文
posted @ 2018-12-09 13:12 sigongzi 阅读(4) 评论(0) 编辑
摘要: 题解 学习一下矩阵求逆 就是我们考虑这个矩阵 $AA^{ 1} = I$ 我们相当于让$A$乘上一个矩阵,变成$I$ 我们可以利用初等行变换(只能应用初等行变换,或只应用初等列变换) 分三种 1.矩阵的两行互换 2.矩阵的一行加上k倍的另一行 3.矩阵的一行都乘上某个数 其实行变换的本质也可以写成一阅读全文
posted @ 2018-12-09 09:57 sigongzi 阅读(8) 评论(0) 编辑
摘要: 题解 什么破题,看一眼就能想出来$n^2 2^n$看了一眼数据范围有点虚,结果跑得飞快= = 处理出$a[i][j]$表示从$i$到$j$经过的点的点集 然后$f[i][S]$表示最后一个点在$i$处,经过的点集为$S$,方案数是多少 然后枚举一个不在$S$中的点$j$看看$a[i][j]$是否全部阅读全文
posted @ 2018-12-08 22:20 sigongzi 阅读(5) 评论(0) 编辑
摘要: 题解 简单分析一下,有$k$个环肯定是,我拆掉了$k 2$个,留最左两个,1步拆掉最左的,这个时候我还要把这$k 2$个环拼回去,拆一次$k 1$ 所以方案数就是$f[k] = f[k 1] + 2 f[k 2] + 1$ 然而太简单了,简单的都不是省选题了,所以他没让你取模= =,让你写FFT的高阅读全文
posted @ 2018-12-08 22:16 sigongzi 阅读(5) 评论(0) 编辑
摘要: 题解 每个数都处理成前缀和,就相当于问$[l 1,r]$有几个数对$x,y$,$sum[x] ^ sum[y] = k$ 直接莫队即可 代码 cpp include define fi first define se second define pii pair define pdi pair de阅读全文
posted @ 2018-12-08 22:13 sigongzi 阅读(1) 评论(0) 编辑
摘要: 题解 有毒吧 这题$O(n)$过不去 非得写$O((a + b)^3\log n)$的矩乘,同样很卡常 把$x$换成$n y$ 我们拆完式子发现是这样的 $\sum_{i = 0}^{a} ( 1)^{a + b i} y^{a i} n^{i} \binom{a}{i}$ 所以我们设$f[i][k阅读全文
posted @ 2018-12-08 22:11 sigongzi 阅读(4) 评论(0) 编辑