随笔分类 - 省选
摘要:day0 没干啥事,下午去看了头号玩家,突然对闪灵及其他一些恐怖片产生了兴趣,可能这就是晚上睡的不是很好的原因2333。晚上本来准备打打模板,但是玩游戏去了,最后只打了打两三个模板,感觉很虚,万一考到了什么带花树,km就要GG了。 day1 有点紧张,拿到题目后仔细看了几遍题目才开始考虑做题顺序1
阅读全文
摘要:五分钟就推完了... 如果模数为质数还有一些简单的搞法,不是质数我好像只想到这一种简便一点的。 枚举每天与前一天的差值,第一天有 n 差值之和 的取法: $$\sum_{x_1=1}^M \sum_{x_2=1}^M ... \sum_{x_{k 1}=1}^M (N \sum_{i=1}^{k 1
阅读全文
摘要:首先整个局面的SG值等于各个独立子局面的SG值异或和,于是只要求SG(1~100000)了。考虑将一堆i个石头分成j堆时,它的后继状态是 {$(j i \ mod\ j)$ 个 $(i/j)$,$(i\ mod \ j)$ 个 $(i/j+1)$},这个后继状态的SG值同样等于这j个局面的SG异或和
阅读全文
摘要:只说一下大概做法吧,我这个做法好难写(或许有的地方是可以简便的做到的),首先建虚树,把虚树上的"议事处"叫做黑点,其他点叫做白点。 对于每个白点算出最近的黑点以及到它的距离(这个我是dfs一遍用线段树维护深度做的),那么这个白点可以看做那个黑点了,只不过计算距离时要多加一个值,然后dfs一遍,对于虚
阅读全文
摘要:day0 上午想了一个做法切掉了 "HNOI2016网络" ,居然拿了几个oj的rk1。下午登上了去衢州的高铁,高铁上一直在颓coc,进攻的太频繁了,金钱爆库了...晚上到了衢州饭店,环境还可以,发现居然和yyc住一个房间,太健美了。 day1 去衢州二中,听浙江大爷讲课,一脸懵逼,不知所措。发现这
阅读全文
摘要:首先容易想到一个log^2的做法,就是这个答案是可以二分的,那么使用线段树套线段树,第一个线段树是权值线段树,第二个线段树记这些权值的路径在每个点的经过次数。那么询问就是在权值线段树上看右儿子的那个点是不是被右儿子的所有路径都覆盖到了,即那个点的经过次数等于右儿子的路径数,如果是那么就往左儿子走,否
阅读全文
摘要:如果信息只有一维,就可以直接排序,扫一遍的过程中用并查集来维护,也就是u和v需要连通且连通块内的最大边权等于询问的边权。现在有两维,我一开始还往分治的方向去想,但是询问所需要的在每一层中的信息不好合并,于是就考虑分块。 首先把边按a排序,分块,把询问挂在第一个a大于询问a的那条边所在的块上,然后每一
阅读全文
摘要:"题目链接" 校内模拟赛出了这题,然后考试时写出了一个做法,评测机貌似有点慢被卡成90了,原题上可以A掉。首先可以知道$O(n^2)$的做法,就是只算全0的矩形个数,枚举下边界是哪一行,定义$h$值表示这个点向上碰到的第一个1的距离,然后可以从左到右枚举右边界,用单调栈维护以每个列作为左边界的矩形最
阅读全文
摘要:"题目链接" $f(i,j)$表示长度为i,由1~i构成且结尾数字为j,结尾为'V'形状的序列方案数。 $g(i,j)$表示长度为i,由1~i构成且结尾数字为j,结尾为'^'形状的序列方案数。 转移比较明显,就是结尾选了j的话那么就把1 ~ j 1 及 j+1 ~ i 映射到 1 ~ i 1 ,根据
阅读全文
摘要:"题目链接" 以下除法均指除后下取整 $$\prod_{i=1}^n \prod_{j=1}^mf(gcd(i,j))\\ =\prod_{x}f(x)^{\sum_i \sum_j [gcd(i,j)=x] } \\ =\prod_{x}f(x)^{ \sum_{x|d} \mu(\frac{d}
阅读全文
摘要:"题目链接" 直接动态开点线段树,维护所有可能出现的位置$[ m,n+m]$,并按排名排列元素,记个区间元素个数以及底层节点代表的编号,再搞个map记每个编号对应在线段树中出现的位置即可,跑的飞快,远超平衡树。 c++ include include include include include
阅读全文
摘要:题目链接 考虑dp,f(i,j)表示做到了第i位(共n位),当前的后缀串与A1~Aj相匹配 接下来的方案数。转移的话枚举一个k=0~9表示这位选什么,如果选了以后,匹配的位置会改变到 j' ,j'可以通过预处理A串的next数组(就是kmp里面的那个)然后不断向前跳得到,所以f(i,j) = ∑ f
阅读全文
摘要:题目链接 发现1操作很像lct中的access,然后它每次染的又是一个新颜色,因此同一个颜色就在同一颗splay里了,且一个点到根的权值val[i]也就是到根路径上虚边的个数,然后看access时会对哪些点的val[i]产生影响。 以下的原儿子表示原来与x在同一颗splay中的儿子 (注意不是spl
阅读全文
摘要:题目链接 单调栈&线段树 离线处理询问,首先用单调栈预处理出左边第一个大于它的数head[i]及右边第一个大于它的数tail[i],然后从左到右及从右到左各进行一遍下述操作: 从右到左枚举一个点i,作为区间的左端点,然后对于i+1到tail[i]在线段树中全部加上p2,若tail[i]不等于n+1就
阅读全文
摘要:题目链接 主席树。 把区间的影响挂在左端点与右端点,建树时顺便对应的插入与删除。 维护一段值域区间的和与数字个数,查询时要注意与第k大的数相同的数可能有很多。 复杂度O(nlogn)
阅读全文
摘要:题目链接 比较简单的一道平衡树题。 第三个操作可以直接用map完成(加进去一个数只会让答案变小,于是与它的前面后面一个数做差更新答案即可),只考虑前两个操作。 ·维护区间内的最大最小值,以及区间相邻两数最小差值。 ·对于insert x k ,相当于在x+1前插入k,再用一个树状数组维护原数组中的每
阅读全文
摘要:题目链接 题目给了你一个奇怪的图,让你求它的生成树个数。 开始写了一个矩阵树: 发现答案会超过long long的范围,而用高精好像会T,于是花了几十分钟去推这个基尔霍夫矩阵行列式的递推式。 首先,我们把这个图的基尔霍夫矩阵最后一行最后一列消去,得到这样的矩阵A |3 -1 0 ... ... 0
阅读全文
摘要:原题链接 我的方法是用另外一颗splay(以原来输入的关键码作为关键字)维护原树节点深度信息,使得在操作时能在原树上快速定位与查询。 为了方便,以下提到的splay都是维护信息的那颗splay,而不是用来模拟原来操作的那棵树。 对于插入,直接在splay中insert,再看它的前驱与后继谁的左/右儿
阅读全文

浙公网安备 33010602011771号