Loading

摘要: 赛时 A B C 略 D 一开始直接做的,发现空间可能会炸掉,之后意识到可以用类似链表的方式实现。 E 期望 DP,非常豪赤。 发现只需要把所有数字排序依次计算即可,具体地,对于一个数,求出没摇到排它前面的任何一个数字的概率,再算出它的贡献即可。 写了写发现第三个样例没过,自己搓了组数据发现不对。调 阅读全文
posted @ 2025-06-23 11:32 整齐的艾萨克 阅读(75) 评论(0) 推荐(0)
摘要: A. 【例题1】任务分配 源点向每个任务连边,容量 \(a_i\),表示该任务在 \(A\) 上完成的花费;每个任务向 \(b_i\) 连边,表示在 \(B\) 上完成的花费;对于每个二元组,连双向边,容量为 \(v\),这样当 \(x\) 和 \(y\) 不在同一点集时,这条边就是一条割边。答案即 阅读全文
posted @ 2025-06-21 18:02 整齐的艾萨克 阅读(17) 评论(0) 推荐(0)
摘要: A. 【例题1】求最大流 板子。 #include <iostream> #include <cstring> #define N 505 #define int long long int n,m,hed[N],tal[N],flw[N],nxt[N],cnte,S,T; void adde(in 阅读全文
posted @ 2025-06-16 23:05 整齐的艾萨克 阅读(8) 评论(0) 推荐(0)
摘要: A. 【例题1】消除格子 对每行和每列建点,如果一个格子有杂物,那么给对应的行和列连边,答案即该二分图的最小点覆盖,等于最大匹配。 由于边是单向的,所以列编号不 \(+n\) 问题也不大。 #include <iostream> #define N 505 int n,m,vis[N],link[N 阅读全文
posted @ 2025-06-10 15:14 整齐的艾萨克 阅读(15) 评论(0) 推荐(0)
摘要: 省流:1596 阅读全文
posted @ 2025-05-31 22:31 整齐的艾萨克 阅读(100) 评论(0) 推荐(1)
摘要: 金牌导航 「动态规划」 「动态规划」第1章 期望概率 DP 「动态规划」第2章 数据结构优化 DP 「动态规划」第4章 单调队列优化 DP 「动态规划」第5章 斜率优化 DP 「动态规划」第6章 动态 DP 「字符串算法」 「字符串算法」第1章 Manacher 「字符串算法」第2章 后缀数组 「图 阅读全文
posted @ 2025-05-28 14:30 整齐的艾萨克 阅读(22) 评论(0) 推荐(1)
摘要: 这是 neatisaac 的金牌导航题解! 我不要写 SA 还没写完。感觉 SA 的板子还是没有学明白。 A. 【例题1】不可重叠串 看似不是板子,和题解不一样,实际上差分一下就好了。 二分判定是否存在长度为 \(mid\) 的相似子串,如果存在后缀 \(i\) \(j\),使得 \(\min_{i 阅读全文
posted @ 2025-05-28 14:22 整齐的艾萨克 阅读(28) 评论(0) 推荐(0)
摘要: 这是 neatisaac 的金牌导航题解! 为方便处理,下文代码中的字符串(如abc)都转换为形如 %#a#b#c#&的字符串,题解中不变。 A. 【例题1】不交回文串 求出每个位置的回文半径之后,利用差分求出以每个位置为开头和结尾的回文串数量,扫一遍求出两个回文串一个在 \(i\) 前面一个在 \ 阅读全文
posted @ 2025-05-27 15:15 整齐的艾萨克 阅读(33) 评论(0) 推荐(0)
摘要: 这是 neatisaac 的金牌导航题解! A. 【例题1】最大子段和 DDP 板子。 令 \(f_i\) 表示以 \(i\) 结尾的最大子段和,\(g_i\) 表示前 \(i\) 个数的最大子段和,有: \[\large f_i=\max(f_{i-1}+a_i,a_i) \\\large g_i 阅读全文
posted @ 2025-05-13 09:15 整齐的艾萨克 阅读(10) 评论(0) 推荐(0)
摘要: 这是neatisaac的金牌导航题解! A. 【例题1】滑动窗口 略。 #include <iostream> #define N 1000005 int n,k,a[N],q[N]; int main() { std::ios::sync_with_stdio(0); std::cin.tie(0 阅读全文
posted @ 2025-05-12 15:18 整齐的艾萨克 阅读(6) 评论(0) 推荐(0)