• P7077 [CSP-S2020] 函数调用

    类似线段树的考虑 首先把赋初值当做 次单点修改 一个 操作的贡献为其后所有 操作贡献的积 一个 操作的贡献同理 考虑到把每个操作当做点,这是一张 设 记 为按照 序列执行,从 开始的 后缀积 则对于操作 ,所有外部操作对它的贡献为被乘 ,可以把每个函数执行的次数算出来 考虑到 的操作不能暴力执行,我们把贡献放到 上面 考虑操作序列 ,当前操作三为操作 则...
  • P7915 [CSP-S 2021] 回文

    暴力 设 为区间 的是否合法 直接记搜,考虑当前决策只有 三种匹配方式,记搜即可 区间 就考虑端点和端点匹配,端点和区间内匹配 考虑第一步选择 的情况 则序列可以划分成两个子问题 vxxxxxxvxxxx ,两个 把序列分成了两份,因为剩下一个 必须最后弹出 记左边一半 为 ,右边一半 为 第二次操作和倒数第二次操作移走的数必须相同,第二次操作为 ,倒数第二次操作为 ...
  • P9745 「KDOI-06-S」树上异或

    考虑到值域很小,我们可以强行把值域加入 状态 同时显然一个连通块的贡献在 处计算,由于 只满足 所以我们还需要知道剩下块的乘积 设 表示, 为 的连通块异或和为 ,其它子树内连通块异或和的乘积 暴力枚举值域转移 , 为值域 精简版代码 123456789101112131415161718192021222324void dfs(int x){ f[x][w[x]]=1...
  • 浅谈博弈论

    博弈论题,把状态压出来,然后做记忆化搜索 [P4363 九省联考 2018] 一双木棋 chess - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 考虑本题性质,每一行一定连续,当前一定是一个左上三角形的局面 考虑压缩状态,我们只需要知道每一行填到哪里了即可 介绍一个奇妙的搜索 剪枝,要求 零和博弈 && 博弈双方足够聪明,两个人目标相反 【算法】极大极...
  • CF1876

    掉大分哩 B赛时写挂了,直接排序 ,如果 直接买光,因为现在不用它买用 买一定更劣 然后 直接村长买就行了 注意开始 ,这样就强制买 最小的了 D考察一个数的贡献 首先即 为所有 中的最大值 考察 的贡献为剩下数随便选的集合中的最大值都不超过它 我们按 排序,设其为第 大,则贡献为 这里不用管两个值相等的情况,分析得任意一种集合选取方案一定只被算一次
  • 浅谈字符串

    主要是复习一下字符串 定义 的前 个字符构成的前缀 的后 个字符构成的后缀 :满足 的 ,且 ,记为 :满足 的 ,且 设 性质 若 为 为 ​ 因为 应用:最短的字符串 ,满足 为 的子串, 前面的就用 拼,后面由于 的性质,可以直接把 拼在后面 的传递性: 若 ,,则 若 ,, ,则 为 的全部 problemP71...
  • P2150 [NOI2015] 寿司晚宴 & P8292 [省选联考 2022] 卡牌

    典中典题 核心为,先观察出值域较小的情况,然后根号分治分开处理两侧,选择一遍进行状压,另一边用其它算法处理 当 时,直接考虑状压因子,预处理每个数含有哪些因子 设 为当 , 选择质因子集合为 , 时的方案数,枚举每个数进行转移 当值域变大,考虑根号分治, ,即 每个数最多含有一个 的质因子 直接状压前 个质因子(),然后考虑每个数一定属于至多一个 的质因子集合,比如 ,它就属于 ...
  • P9019 [USACO23JAN] Tractor Paths P

    一个点跑到一个区间+两点最短距离,直接倍增一直跑就行了 找到每个点向左最远的区间 ,向右最优的区间 直接大力倍增跑路 注意倍增跑路一定是 不要取 ,最后再 +1 即可 考虑第二问,设第一问答案为 考虑走到一个特殊点 ,当前走了 步 问题等价于从 出发,走 步可达 维护 这段的特殊拖拉机个数 同理维护 我们 i 4 p 2 q 1 j 从 中间的数字表示跳了多少条边 考虑...
  • Kru重构树

    Kru 重构树https://www.luogu.com.cn/blog/me-immortal/kruskal-chong-gou-shu https://www.luogu.com.cn/blog/mywd-ylyy/kruskal-zhong-gou-shu 构造的过程很像 生成树 解决 从A点走到B点的所有路径中,最长的边最小值是多少 这类问题 考虑 我们新建节点 , 的点权为 ...
  • Borůvka

    Borůvka 求 ,一般用于求完全图 ů 其实是一种多路增广的 算法由一个点开始,往外不断贪心地找最短边,然后不断扩大连通块,直到形成一棵树 而 ů 算法每一次的增广,会对现在的每一个连通块都找一遍的最短边,最后每个连通块择优,将这些边全部连上 对于现在的每个连通块,找到从这个连通块出发,不在最小生成树中的、到达别的连通块的最短边 (注:若权值相同,则需要再按照另一个维度严格排序,...
14567813