随笔分类 -  题解

摘要:好好好。 我们设当前处理 \(i\) 的答案,那么最后的图就可以分成两个部分:\(1\) 所在的联通块和其他,根据乘法原理,答案就是它们二者方案的乘积。 设 \(f_s\) 表示集合 \(s\) 中所有点联通时图的情况数,\(g_s\) 表示集合 \(s\) 中所有点不一定联通时图的情况数,则有: 阅读全文
posted @ 2024-10-14 21:41 长安一片月_22 阅读(15) 评论(0) 推荐(0)
摘要:有点水了…… 考虑相邻的不能放在一起,不相邻的可以,那么很容易想到转移方程: \[dp_{i,j}=\sum_{k=0}^{25}dp_{i-1,k}[j,k不相邻] \]其中 \(dp_{i,j}\) 表示填了 \(i\) 位,最后一位填 \(j\)。 那结合数据范围,显然矩阵快速幂。 时间复杂度 阅读全文
posted @ 2024-10-14 19:41 长安一片月_22 阅读(22) 评论(0) 推荐(0)
摘要:好题好题,难者不会会者不难,我是前者。 实际上加入就可以合法的数是很好计算的。考虑现在所有前缀合法串后的字符实际上都可以满足条件。 容易想到根据是否合法设置状态。设 \(f_{i,j}/g_{i,j}\) 表示现在填第 \(i\) 个数,有 \(j\) 个填了就合法的数,现在的串合法/不合法。 那么 阅读全文
posted @ 2024-10-14 19:14 长安一片月_22 阅读(16) 评论(0) 推荐(0)
摘要:突然想起来自己把比赛总结的好习惯忘掉了,所以现在重新拾起,故名曰《朝花夕拾》。 T1 出了个大阴间题 看数据范围明显状压。很明显,\(a,b\) 分成两部分处理。 \(f_{s,i}\) 表示状态为 \(s\),\(a=i\) 时的所有情况之和,还要计算 \(num_{s,i}\) 表示此时情况数。 阅读全文
posted @ 2024-09-16 08:01 长安一片月_22 阅读(27) 评论(0) 推荐(0)
摘要:珂朵莉树+树链剖分+BIT+ST表。 阅读全文
posted @ 2024-08-21 20:40 长安一片月_22 阅读(25) 评论(0) 推荐(0)
摘要:不知道大家做没做过数列分块基础9题? 插入删除操作可以用链表,线段树等数据结构都不好维护,考虑分块。对于修改操作,暴力重构受影响块的链表,发现除首尾块外,其他块都可以看作是区间左移一位,所以加头删尾即可。 每个块开一个数组(绝对不能是 \((un\_)map\),不然你会和我一样死的很诡异),表示这 阅读全文
posted @ 2024-07-31 21:25 长安一片月_22 阅读(30) 评论(0) 推荐(0)
摘要:给一篇题解。(下面这张图是从 luogu 上粘贴的,因为不太会画图) 其中纵坐标为 \(t\),横坐标为 \(a_i\)。 发现同颜色块只有平行四边形和直角梯形(等腰直角三角形)两种情况。 可以将直角梯形削去左下角,分成两部分考虑。 等直可以直接暴力插入区间,总个数 \(O(n)\)。 平行四边形可 阅读全文
posted @ 2024-07-31 21:21 长安一片月_22 阅读(29) 评论(0) 推荐(0)
摘要:考试一道题题解。 30pts:枚举所有串,\(check\) 是否可行。 60pts:做 \(bfs\),暴力推演变化过程,用 \(map\) 去重,时间复杂度 \(O(nC_{n}^{n/3}C_{n-n/3}^{n/3})\)。 #include<bits/stdc++.h> #define l 阅读全文
posted @ 2024-07-31 21:17 长安一片月_22 阅读(31) 评论(0) 推荐(0)
摘要:在考场遇到了这道题,感觉很有意思。 当时直接想到的就是虚树,可惜打挂了。 后来改对了,写篇题解纪念一下。 首先看到 \(\sum M_i\le 2\times 10^5\),很容易想到虚树的数据范围。 我们设 \(dp_i,fg_i\) 表示将 \(i\) 的子树全部染白或染黑需要多少次,\(vis 阅读全文
posted @ 2024-07-24 15:06 长安一片月_22 阅读(19) 评论(0) 推荐(0)
摘要:后缀自动机维护子串公共后缀方便一点,所以直接倒序插入字符串即可。 我们给所有前缀打上标记,然后跑树形 \(dp\),设 \(sum_i\) 表示第 \(i\) 个点的子树内有多少个前缀,\(ans\) 统计 \(\sum \text{LCP}(T_i,T_j)\),则有: \[ans=\sum\li 阅读全文
posted @ 2024-07-10 10:22 长安一片月_22 阅读(16) 评论(0) 推荐(0)
摘要:讲一种自认为最暴力的方法。 首先肯定还是用差分的思想,对于每一张卡片进行重新标号,在卡片串与卡片串中插入特殊字符,然后找重复了 \(n\) 次的子串。 这里我们对于每一个子串开一个大小为 \(n\) 的标记,表示他在不在第 \(i\) 个卡片串里。 然而这样很明显容易 \(\text{MLE+TLE 阅读全文
posted @ 2024-07-10 09:33 长安一片月_22 阅读(26) 评论(0) 推荐(0)
摘要:所有子串,一眼 \(\text{SAM}\)。 从根开始一直往下走,走到任何一个点都代表一个子串。维护 \(sm\) 表示每个子串有几个(\(t=0\) 就当一个),可以用树形 \(dp\) 跳后缀链接树,然后暴力跑 \(\text{SAM}\) 即可。 当然我们发现这样时间复杂度会爆炸,因为第二部 阅读全文
posted @ 2024-07-10 08:09 长安一片月_22 阅读(27) 评论(0) 推荐(0)
摘要:我们设 \(dp_{i,j}\) 表示第 \(i\) 到第 \(j\) 个括号合并为序列且最外层不是括号 \(i\) 的可能性,\(f_{i,j}\) 表示最外层是括号 \(i\) 的可能性。则有: \[\begin{cases} dp_{i,j}=\sum f_{i,k}(dp_{k+1,j}+f 阅读全文
posted @ 2024-07-08 10:12 长安一片月_22 阅读(26) 评论(0) 推荐(0)
摘要:五星压行大师 \(lyh\) 表示:这是难得能让他的代码长度打破百行大关的题目(182行)。 首先,根据科技与狠活,本题可以黑白染色。源点联向白格,黑格连向汇点。 发现每个格子都可以连向四个方向,所以可以建立四个点,代表水管连到了上下左右四个方向。 设四元组 \((x,y,z,p)\) 表示水管初始 阅读全文
posted @ 2024-06-08 09:15 长安一片月_22 阅读(34) 评论(0) 推荐(0)
摘要:考试压轴题,意识到这题是线段树优化 \(dp\) 时追悔莫及。 为了简化题目,我将从起点到原点变成了从原点到起点(这样就可以省去两个数组的空间)。 想到设 \(dp_{i,j}\) 表示在第 \(i\) 层,奶牛们在 \(j\) 列时的最小移动范围,则转移方程为(设输入为 \(l,r\)): \[\ 阅读全文
posted @ 2024-06-04 20:56 长安一片月_22 阅读(22) 评论(0) 推荐(0)
摘要:考虑将修车师傅放在一边,顾客放在一边。 对于第 \(i\) 辆车,让第 \(j\) 个修车师傅来修,放在了倒数第 \(l\) 个,那么他产生的贡献即为 \(t_{i,j}\times l\)。 我们可以将每个修车师傅拆成 \(n\) 个点,第 \(l\) 个点表示修车师傅的倒数第 \(l\) 个位置 阅读全文
posted @ 2024-05-19 11:51 长安一片月_22 阅读(21) 评论(0) 推荐(0)
摘要:每个点拆成入点和出点。 发现每个点、每条边都只能经过一次,所以所有边的容量都是 \(1\)。 #include<bits/stdc++.h> #define ll long long using namespace std; const int N=405,M=1e5+5; int n,m,s,t, 阅读全文
posted @ 2024-05-19 11:00 长安一片月_22 阅读(15) 评论(0) 推荐(0)
摘要:发现题目中描述的配对条件可以理解为:\(pc_i-pc_j=1\) 且 \(a_i\bmod a_j=0\),其中 \(pc_i\) 表示 \(a_i\) 的质因数个数。 自然想到以 \(pc\) 奇偶性建立二分图,可以配对的点间连一条边。 先不考虑费用,三种边为: \((s,i,b_i)\),其中 阅读全文
posted @ 2024-05-19 10:22 长安一片月_22 阅读(19) 评论(0) 推荐(0)
摘要:发现可以做如下建图: 对于前两组输入,从 \(s\) 向所有代表学生的点连一条边,容量为其学习文科的喜悦值;从所有代表学生的点向 \(t\) 连一条边,容量为其学习理科的最大值。 对于后四组输入,建两个点 \(x,y\),从 \(s\) 向 \(x\),从 \(y\) 向 \(t\) 分别连容量为相 阅读全文
posted @ 2024-05-09 11:13 长安一片月_22 阅读(16) 评论(0) 推荐(0)
摘要:发现实际上就是在求有多少只蜥蜴能逃出来。 发现可以将柱子拆成入点和出点两部分,自己的出点向别人的入点连边,自己的入点向自己的出点连边。最后再加一个超级源点 \(S\),连接所有有蜥蜴的柱子入点;再加一个超级汇点 \(T\),连接所有能够跳出地图的柱子。 我们猛然发现:这个问题不就是求最大流吗? 考虑 阅读全文
posted @ 2024-05-05 10:59 长安一片月_22 阅读(18) 评论(0) 推荐(0)