随笔分类 -  题解

摘要:uoj675 加强:\(\sum k\le6\times10^5\) 暴力 \(u\) 在 \(s\Rightarrow t\) 路径上 \(\iff\) 正图上 \(s\Rightarrow u\) 且反图上 \(u\Rightarrow t\) 时间复杂度 \(O((n+m)q)\) 正解 只关 阅读全文
posted @ 2024-09-10 20:00 ft61 阅读(54) 评论(0) 推荐(0)
摘要:https://codeforces.com/problemset/problem/2002/D2 考虑找一个容易维护的必要条件,再证明充分性。我们希望这个条件在 swap 后需要重新 check 的不多 每个子树对应一个区间,子树根位于左端点 父子 自下而上地 check 每个子树都合法 父子 \ 阅读全文
posted @ 2024-09-07 22:51 ft61 阅读(57) 评论(0) 推荐(0)
摘要:gym D. Balanced Array \(\star\) 赛时做法 枚举前缀维护合法的 \(k\) 感性上 \(k\) 越大需要满足的式子越少,只保留最大的 \(\log\) 个 \(k\),可以通过 std 枚举 \(k\),合法的 \(l\) 一定是一个左端点为 \(2k+1\) 的区间, 阅读全文
posted @ 2024-09-04 20:56 ft61 阅读(463) 评论(0) 推荐(0)
摘要:CF2002E Cosmic Rays \(\star\) 顺着询问想增加二元组 \((a,b)\) 的影响。只需要考虑它的合并情况,即尾部什么时候会出现数字 \(b\),而总时间可以看作是最后一个尾部的存在时间,所以我们只需要关心尾部 用栈维护尾部的数值和存在时间(不难发现这是一个单调栈) vec 阅读全文
posted @ 2024-09-03 19:33 ft61 阅读(47) 评论(0) 推荐(0)
摘要:CF1995D Cases 显然如果选了某个字符那么不妨选它出现的所有位置。check 方式等价于相邻两个选择的位置间距 \(\le k\),等价于连续 \(k\) 个必须选一个(最后一个必须选) 枚举位置维护字符集是做不了的,状态数 \(O(n2^c)\) 无法优化 考虑枚举字符集 \(s\)。设 阅读全文
posted @ 2024-09-02 20:58 ft61 阅读(39) 评论(0) 推荐(0)
摘要:题意 uoj768 构造长为 \(n\) 的序列 \(a\),满足 \(m\) 条限制:\(\min_{j=L_i}^{R_i}\{a_j\}=V_i\),要求逆序对数最少 \(n,m\le10^6\) 题解 21pts 暴力 先进行一些观察: 逆序对只关心相对大小,所以 \(\forall a_j 阅读全文
posted @ 2024-09-01 11:42 ft61 阅读(62) 评论(1) 推荐(0)
摘要:https://atcoder.jp/contests/dp J - Sushi 设 \(f[i,j,k]\) 表示有 \(1/2/3\) 个寿司的盘子有 \(i/j/k\) 个 考虑随机到哪种盘子列出方程即可解出 \(f[i,j,k]\) 的递推式(\(k,j,i\) 递减) 或者注意到期望 \( 阅读全文
posted @ 2024-08-16 22:46 ft61 阅读(52) 评论(0) 推荐(1)
摘要:https://atcoder.jp/contests/abc304/tasks/abc304_h [CSP-S 2023] 种树后半部分的加强版 对于边 \((u,v)\),不妨令 $r[u]$ 对 \(r[v]+1\) 取 \(\min\) 从前到后依次考虑拓扑序,第 \(i\) 个点满足入度为 阅读全文
posted @ 2024-08-09 22:50 ft61 阅读(39) 评论(0) 推荐(0)
摘要:https://loj.ac/p/6669 赛时做法 先 \(n-1\) 次问出深度 逐层考虑。slv(vector<int> a,vector<int> b) 表示在点集 \(a\) 中寻找 \(b\) 中点的父亲,询问 \(a[0]\) 和 \(b\) 中所有点的距离分治下去 复杂度不会算,印象 阅读全文
posted @ 2024-08-07 22:30 ft61 阅读(54) 评论(0) 推荐(0)
摘要:2023 省赛 A 颜色平衡树 写的启发式合并 multiset(用来求出现次数的最值) 最好的做法应该是 dsu on tree 买瓜 unordered_map 会 T,gp_hash_table 会 M,只能手写哈希表 网络稳定性 答案为最大生成树上两点路径上边权最小值,为 kruskal 过 阅读全文
posted @ 2024-05-31 20:06 ft61 阅读(83) 评论(0) 推荐(2)
摘要:vp 了 3h。A WA(想错了,也没手玩),B 不会(应该是欧拉定理,忘了),H 40%(背不过板子)。其他过了 H \(O(n^2\log n)\) 本地 1s+,I 本地 3.4s/jk,最后都没挂。想了下这么典的问题应该没有更优做法,相信评测机 大部分题都随手测了一下,只拍了 E(二分)I( 阅读全文
posted @ 2024-05-30 23:12 ft61 阅读(72) 评论(0) 推荐(0)
摘要:游记 gym F. Top Cluster std 二分答案。需要判断点权 \(\le mid\) 的点到询问点的最大距离。直径。 K. Card Game 设 \(f[l,r]\) 为 \([l,r]\) 的答案,\(suf[l]\) 为 \(l\) 之后第一个 \(=a[l]\) 的位置。考虑 阅读全文
posted @ 2024-02-29 22:29 ft61 阅读(364) 评论(0) 推荐(1)
摘要:LG LG9979 [USACO23DEC] Target Practice S code LG9980 [USACO23DEC] Flight Routes G sol 1 已知邻接矩阵求路径数奇偶性是容易的,倒着做即可 bitset 实现。时间复杂度 \(O(\frac{n^{3}}{\omeg 阅读全文
posted @ 2024-01-11 23:00 ft61 阅读(181) 评论(0) 推荐(1)
摘要:T4 传信游戏 建反向边,从入度为 \(0\) 的结点开始搜 T5 喵喵卫士,全靠你了\(\star\) 考虑暴力枚举每个点的深度,发现只要知道相邻两层的深度就能用组合数算方案数,自然想到按层 DP,把上一层的点数记到状态里 赛时做法 按深度从小到大 DP 的话想要记录每个点是否被用过,以保证深度达 阅读全文
posted @ 2024-01-10 15:29 ft61 阅读(451) 评论(0) 推荐(1)
摘要:gym B. 终焉之茧 \(\star\) 显然两个维度分别做 单谷函数,起始点 \(A\) 是一个端点。一个 naive 的想法是三分目标点 \(B\),但交互次数会超。二分关于 \(B\) 对称点 \(C\) 即可 注意题目要求距离为 \(0\) 时立刻结束而不是最终距离为 \(0\)。一晚上没 阅读全文
posted @ 2023-12-25 21:01 ft61 阅读(266) 评论(0) 推荐(2)
摘要:LG9753 CF1223F 我们称一个字符串是可消除的,当且仅当可以对这个字符串进行若干次操作,使之成为一个空字符串。其中每次操作可以从字符串中删除两个相邻的相同字符,操作后剩余字符串会拼接在一起。 You are trying to push array elements to the stac 阅读全文
posted @ 2023-11-08 20:23 ft61 阅读(164) 评论(0) 推荐(1)
摘要:AT 一个直接的想法是拓扑排序时从小到大标号:每次在入度为 \(0\) 的点中找到 \(l_{u}\le i\) 且 \(r_{u}\) 最小的 \(u\),令 \(p_{u}=i\) 问题是如果 \(r_{u}\) 很大,那么 \(u\) 被标号的优先级很低,会连累 \(u\) 的后继中 \(r\ 阅读全文
posted @ 2023-10-25 22:03 ft61 阅读(37) 评论(1) 推荐(0)
摘要:LG5445 把询问 \(x,y\) 看作平面上的点 记当前时刻 \(t\),\(l\) 是与 \(i\) 连通的最左端,\(r\) 是与 \(i+1\) 连通的最右端,可以通过 set 维护断边找到 连边 \((i,i+1)\) 时 \(x\in[l,i],y\in[i+1,r]\) 连通了,考虑 阅读全文
posted @ 2023-10-12 22:52 ft61 阅读(30) 评论(0) 推荐(0)
摘要:LG2161 显然: 任意时刻每个点最多被一条线段覆盖 暴力删每条线段的复杂度是对的 插入 \([l,r]\) 时需要删除的线段要么被 \([l,r]\) 包含,要么覆盖 \(l\) 或 \(r\) 性质非常强所以做法非常多 一种比较神奇的:对于两条线段 \([l_{1},r_{1}],[l_{2} 阅读全文
posted @ 2023-10-04 21:07 ft61 阅读(32) 评论(0) 推荐(1)
摘要:VO.7 阅读全文
posted @ 2023-09-21 20:27 ft61 阅读(985) 评论(1) 推荐(0)