03 2020 档案
摘要:刷了一下,写一下。 T1. 天天爱射击 可以这样想。 我们二分一下每一块木板在什么时刻被击碎。 然后直接用主席树维护的话是$O(nlog^2n)$的。 会$T$,而且是一分不给那种。。。 那么换个想法,既然都用主席树了,还二分啥。 可以直接主席树上查区间排名。 似乎也可以整体二分。 复杂度$O(nl
阅读全文
摘要:我淦了这个T3 T1 考虑模意义下解方程。 我们对每一个点列一个方程。 可以列出$n 1$个,另外一个加不加是一样的,因为可以用$n 1$个来表示$n$个。 那么建树。 剩下的$m (n 1)$条边和树边可以构成$m (n 1)$个环。 然后可以列出来剩下的$m (n 1)$个方程。 总共$m$个方
阅读全文
摘要:T3恶心死我了写了182行4.6K。 T1 联赛状压题。 我们发现$m$很小,那么状压。 设$f[i][j][S]$为第$i$个元素使用了$S$集合中的操作之后大小为$j$的概率。 那么我们可以写出转移方程。 $$f[i][j][S]=\sum\limits_{k\in S}\sum\limits_
阅读全文
摘要:直接全都WA爆了。 T1 博弈论模型,其实就是转化成$xor$和为$0$。 我们考虑朴素的$dp$,$dp[i][j][k]$设为前$i$个元素,去掉的元素个数$mod\ d$为$j$,$xor$和为$k$的方案。 暴力转移即可。 考虑最终答案是$dp[n][0][0]$ 我们降序排序$\{a\}$
阅读全文
摘要:T1 好可恶的憨憨题。。 大体上是一个思路转化。 我们把求被覆盖的方案数转化为求总方案数和不被覆盖的方案数。 我们知道最多有$nlogn$个区间的$gcd$是不同的。 我们把这些极长区间求出来。 按照左端点找右端点和右端点找左端点分别求两次。 会得到一个三元组$(L,r1,r2),(R,l1,l2)
阅读全文
摘要:好难啊。 T1 数论题。 我一开始以为是什么$burnside$之类的。 看来全是$yy$了。 我们可以把四个排列$A,B,C,D$中的每一个位置都在四张图上连边$(i,P_i)$。 这样会形成若干环。 那么我们要搞得所有步全都是这样的: 从$G_A,G_B,G_C,G_D$中分别选四个圈出来。 设
阅读全文
摘要:好好难难 T1 似乎是四分图染色。 然而并没有那么麻烦。 我们考虑原图$G$的一个边集$T$为其的一个生成树。 那么剩余边集设为$H=G T$。 树必然可以二分图染色。 那么如果$H$也可以二分图染色的话。 我们将染色的四种情况一一对应为四种颜色即可。 否则那么$H$中必然存在奇环。 而删去奇环后$
阅读全文
摘要:好难啊。 T1 最难的题。 推式子很难推。 但是我考场上想到一种二次剩余硬解的方法。 写在上一篇博文里面了。 推式子的话。 其实这种求解的数论题要点就在于奇偶分类讨论和迭代递归思想。 包括缩小数据范围等等。 这些思路是最重要的。 式子仔细看就可以看懂的。 T2 灌水。 神奇的结论$A$掉这个题。 我
阅读全文
摘要:1.质数情况 我们要求的式子可以表示成$x2\equiv a(mod\ p)$ 首先判有无解: 我们知道:\(a^{\frac{p-1}{2}}=-1/0/1\) 只有这三种情况。 当$a{\frac{2}}=-1$时无解,为0时$x=0$,为$1$时优解。 证明必要性: \((x^2)^{\fra
阅读全文
摘要:好可恶卡常卡死我了。 T1 我们点分治。 对于每一个位置按照到点分中心的所有子树节点划分不同路径。 二分答案(最小的使得大于其的路径个数为K的长度)。 只需要给点分数据排序。 双指针扫一扫再加一个求有多少个大于等于当前二分长度的路径。 输出答案即可。 T2 维护一个线段树。 维护区间与缀和,或缀和。
阅读全文
摘要:1. 首先发现每一条边$(i\rightarrow i+1)$只有两种状态。 向左走或者向右走。 我们只需要记录$dp[i][j]$表示前$i$个点有$j$条向左的答案即可。 转移的时候应当特判$s,t$同时判断当前状态是否可以使得向左或者向右的边配对。 看剩下的向左或者右边是否足够即可。 2. 将
阅读全文
摘要:好恶心的题。 服了。 T1 对顶堆启发式合并。 维护出每一个节点的$a[mid]$,和$a[mid+1]$即可。 最后$dfs$一次用树状数组维护后缀和即可快速的分情况统计答案。 T2 直接求$g[d]$表示$gcd|d$的子串个数。 然后单独在一个序列中的可以直接求出来。 因为最多只有$log$个
阅读全文
摘要:。。。 T1 套路题 建出$SAM$,离线询问按右端点排序。 做$LCT+SAM+$线段树的扫描线。 然后把每一个前缀节点$access$并且染色。 染色之前把被覆盖的颜色在线段树上打上相应的$len$的贡献。 然后查询的时候直接查询相应区间即可。 T2 发现题目要求的就是重心。 然后我们如果不破坏
阅读全文
摘要:1. 枚举根 可以把每个点抽象成从这个点到根路径上的点全部+1,规则改为两个点可以消去。 不同子树显然不属于同一个集合。 我们可以进行操作。 对于一个点来说。 相当于给予一个$a$数组。 求最终剩下的个数和消去的次数。 那么分$sum a_{max} =a_{max}$和$sum a_{max}<a
阅读全文
摘要:。。。 怎么又改题大神了。 kuku. T1 我们对于每行的每一个字串计算有多少个子矩形将之容纳并计算为有效贡献。 相当于是对一行的每一个后缀的每一个前缀进行计算。 我们先建trie树。 其上每一个节点代表当前阶段后缀(最一开始的阶段当然是整个串,总共有m个阶段)的不同前缀。 对于每一个节点开一个$
阅读全文
摘要:今天似乎格外的简单呢。 T1 我们最喜欢的$dp$。 每次$dp$出剩下$i$个人的情况下对答案期望的贡献。 这样贪心的拿到最多的贡献就行了。 然后这个物品就要去掉一个人的贡献 用一种比较巧妙的$dp$来统计就可以了。 T2 可怜的变元矩阵树定理。 暴力插值就行了。 值得一提的是脸哥写的那种$dp$
阅读全文
摘要:T1 现实搜索题。 告诉我什么是真实。 如果一个串的子序列个数大于$n$,那么一定可以有一个名字。 所以说一个人搜出最多$n+1$个子序列即可。 然后网络流暴力增量匹配一下。 最后统计答案的时候判断哪个边满流即可。 T2 lcm不好弄。 考虑分别求每一个质因子的贡献。 这样相当于再求某一个质因子的$
阅读全文
摘要:T1 很思维的题。 我们把所有的度数小于3的点全部都缩掉然后分情况给边和去掉的边的答案乘上对应的贡献即可。 用$set$和$bfs$来维护就可以了。 时间复杂度$O(nlogn)$ 代码比较麻烦。 学到一招: $mutable$型:易变型变量。 如果$set$中的元素的大小符定义和这个元素中含有的某
阅读全文
摘要:非常值得反思的一场考试 考完改了20分钟就$AK$了。。。 $T2$的预处理处理到了$n 2$??? 处理到$n 1$就$A$了。 $T3$的一个循环写错了位置,往下调了一格就$A$了。??? 自闭场。 明天就$noi\ online$了。。 诶。。状态什么时候能来啊。 行吧,就这样吧。 T1 讲过
阅读全文
摘要:我T2被卡常。 (笑。 T1 这个题和那个ZJOI线段树挺像的。 利用期望的线性性,dp出每一对点成为逆序对的概率。 然后加起来就是答案了。 这样直接dp是$O(n^4k)$的。 做两个前缀和就可以做到$O(n^2k)$了。 T2 打个表能发现决策如果在$i$可行,那么在$i+1$也可行。 证明的话
阅读全文
摘要:我们知道$FFT$是一个循环卷积。 本质上的离散傅里叶变换满足的是这个性质: $$c_k=\sum\limits_{i,j}[i+j=k(mod\ n)]a_ib_j$$ 但是由于我们做的长度足够大($n$足够大)所以这种循环卷积卷不回去。 这导致我们只能做特定长度的$FFT,n=2^w$ 如果我们
阅读全文
摘要:今天的题超极棒。 T1 汉诺塔问题。 我们考虑把汉诺塔想象成一颗搜索树。 然后在上面找到当前的某一步就相当于递归到最底层。 然后中间判一下合不合法,如果走右儿子就加上左边的贡献就行了。 大概是个noip题。。。 T2 设函数$next(n,k,s)$为大于等于$n$的$k$进制数中,各个位和为$s$
阅读全文
摘要:T1 把题目中的限制转化为: $x$在儿子的子树中并且$y$不在儿子的子树中。 $y$在儿子的子树中并且$x$不在儿子的子树中。 线段树节点维护$dfs$序在节点区间中的所有的$x$或者$y$。 当然,红蓝各开两个线段树树。 按照$dfs$序区间查询然后暴力扫描$vector$就可以知道要删除哪些点
阅读全文
摘要:T1 用一个堆从后向前扫。 依次用正数抵消负数。 最后相当于把$b_i$作为$a$的首位。 这样的话直接用一个前缀和+二分来统计答案就可以了。 T2 我们把颜色从大到小加入。 然后判断当前是否在同一个连通块。 如果是再判断是否大于$K$,小于等于就直接更新答案。 否则查看是否有办法缩减为一个集合,并
阅读全文

浙公网安备 33010602011771号