摘要: P9981 [USACO23DEC] Minimum Longest Trip G 给定 \(n\) 个节点 \(m\) 条边的 DAG,每条边长度为 \(1\),另有一个边权。 求每个点出发的最长路,以及最长路中边权序列字典序最小的路径的边权之和。 给出的图是 DAG,第一问可以直接拓扑排序求最长 阅读全文
posted @ 2025-10-22 16:55 Sinktank 阅读(10) 评论(0) 推荐(0)
摘要: 高斯消元法是求解线性方程组的经典算法。 内容 求解如下的线性方程组(P3389 【模板】高斯消元法): \[\begin{cases} a_{1,1}x_1+a_{1,2}x_2+\dots+a_{1,n}x_n=b_1\\ a_{2,1}x_1+a_{2,2}x_2+\dots+a_{2,n}x_ 阅读全文
posted @ 2025-10-20 21:55 Sinktank 阅读(38) 评论(0) 推荐(0)
摘要: 1. 扩展域并查集 扩展域并查集,就是将单个元素的 \(k\) 个状态拆成 \(k\) 个点进行维护的并查集。 例 \(1\): 现有 \(n\) 个元素,\(m\) 个二元关系,现在要将这些元素分成两个集合,使得每对二元关系对应的元素在不同的集合中。 问能否完成。 我们发现,每个元素都有 \(2\ 阅读全文
posted @ 2025-10-14 21:40 Sinktank 阅读(76) 评论(0) 推荐(0)
摘要: P13274 [NOI2025] 三目运算符 提供一个不同的线段树实现。 根据题目我们知道,\(s_i\) 变换后的值仅与 \(s_{i-2},s_{i-1},s_i\) 有关。考虑这三个数的 \(2^3\) 种取值,我们发现只有 101 和 110 会使 \(s_i\) 发生变化。 进一步分析: 阅读全文
posted @ 2025-10-10 19:11 Sinktank 阅读(28) 评论(0) 推荐(1)
摘要: 树的性质 树上任意两点间恰有一条简单路径。 树上所有节点度数和为 \(O(n)\) 的。 树上 \(m\) 个点两两产生的 LCA 去重后不超过 \(m-1\) 个。 Proof:考虑找 LCA 的过程,两个点向上跳,重合时合并成一个点。最后剩下 \(1\) 个点,即合并了 \(m-1\) 次,故 阅读全文
posted @ 2025-10-08 17:49 Sinktank 阅读(21) 评论(0) 推荐(1)
摘要: P7514 [省选联考 2021 A/B 卷] 卡牌游戏 极差不是很好处理,考虑将所有的 \(a,b\) 放在一起进行排序。对于排序后的数组,一个合法的答案可以看作删掉了它的一个前缀 \(s\) 和后缀 \(t\),且: 删除的 \(a\) 中元素不能超过 \(m\) 个。 同一张牌最多只能删 \( 阅读全文
posted @ 2025-10-07 12:49 Sinktank 阅读(16) 评论(0) 推荐(1)
摘要: P12008 【MX-X10-T4】[LSOT-4] Fragment of Memories 可以想到很 naive 的思路,对于每个 \(x\) 值二分答案 \(m\)。check 函数可以 \(O(n)\) 完成。总时间是 \(O(n^2\log n)\) 的。我们发现 check 函数明显还 阅读全文
posted @ 2025-10-06 12:33 Sinktank 阅读(11) 评论(0) 推荐(0)
摘要: A - Sigma Cubes \((-1)^i\) 在 \(i\) 为奇数时为 \(-1\),偶数时为 \(1\)。按题意模拟即可。 时间复杂度 \(O(n)\)。 点击查看代码 #include<bits/stdc++.h> #define int long long using namespa 阅读全文
posted @ 2025-09-29 21:53 Sinktank 阅读(62) 评论(0) 推荐(0)
摘要: 题目列表 / 官方题解 这场的题目真的炒鸡优质,给命题组一个大大的赞。 终于补完啦 >< T1 初遇 首先我们特判 \(a=n\)、\(b=n\) 或者 \(a+b=n\) 的情况为 No。 接下来,考虑两种操作方式: 不断将右边的值赋给左边的值。 不断将左边的值赋给右边的值。 当 \(a\ne b 阅读全文
posted @ 2025-09-28 17:33 Sinktank 阅读(45) 评论(0) 推荐(0)
摘要: 补题中。 参考:https://sua.ac/wiki/2019-provincial-shandong/ A - Calandar 两日期相差的天数是 \(\Delta d+30\Delta m+360\Delta y\),取模即可。 点击查看代码 #include<bits/stdc++.h> 阅读全文
posted @ 2025-09-18 17:35 Sinktank 阅读(56) 评论(0) 推荐(0)
摘要: CF1404B Tree Tag ~ Codeforces 我们发现,若 \(db\le 2\times da\),则说明 Bob 不能跳到 Alice 控制范围的另一侧,只能被 Alice 不断逼近到某个叶子节点,从而输掉。 不过有些情况下,Bob 的最大移动距离不是 \(db\)。因为其移动会受 阅读全文
posted @ 2025-09-11 21:07 Sinktank 阅读(16) 评论(0) 推荐(0)
摘要: P4281 [AHOI2008] 紧急集合 / 聚会 不难发现,我们所要求的答案就是一个点,满足它到 \(x,y,z\) 的路径两两无公共边。 在此基础上手玩样例可以发现,\(\text{LCA}(x,y),\text{LCA}(y,z),\text{LCA}(x,z)\) 三个点中,至少有 \(2 阅读全文
posted @ 2025-09-11 15:29 Sinktank 阅读(24) 评论(0) 推荐(0)
摘要: P3503 [POI 2010] KLO-Blocks 一个区间能做到高度全部 \(\ge k\),当且仅当该区间的平均值 \(\ge k\)。 于是我们为每个 \(a_i\) 减去 \(k\),再求出其前缀和数组 \(s\)。 问题转化为求: \[\large \max\limits_{l\le 阅读全文
posted @ 2025-09-06 19:33 Sinktank 阅读(19) 评论(0) 推荐(0)
摘要: 前 大概一年半前写过数位 DP 的笔记,忘挺快的,并且考虑到之前的 \(2\) 篇笔记(上 下)语言稚嫩、公式混乱、码风清奇(其实还好),有些许地方言不达意,所以打算从头梳理一下,并且对若干题目进行方法归纳、深入思考。 会不定期更新。 附上题单:https://www.luogu.com.cn/tr 阅读全文
posted @ 2025-09-04 18:16 Sinktank 阅读(73) 评论(0) 推荐(1)
摘要: 康托展开是一种将长度为 \(n\) 的排列与 \(n!\) 个整数之间建立双射关系的算法。 前者到后者称为康托展开,后者到前者称为逆康托展开。 康托展开 P5367 【模板】康托展开 对于长度为 \(n\) 的排列 \(a\),其在所有 \(n!\) 个排列中的排名(即字典序从小到大的位次)为: \ 阅读全文
posted @ 2025-09-03 21:01 Sinktank 阅读(51) 评论(0) 推荐(0)
摘要: P9820 [ICPC 2020 Shanghai R] Mine Sweeper II 一个关键性质是:将 \(A\) 反转为 \(A'\) 后,非地雷单元格的数字和不变。 \(B\) 变化到 \(A\),和 \(B\) 变化到 \(A'\),两者操作次数总和是 \(n\times m\)。 那么 阅读全文
posted @ 2025-08-26 16:59 Sinktank 阅读(19) 评论(0) 推荐(0)
摘要: CF234F Fence ~ Codeforces 令 \(f[i][j][k][l=0/1]\) 为给前 \(i\) 个栅栏涂色,红色面积为 \(j\),绿色面积为 \(k\),第 \(i\) 个栅栏涂红 / 绿色的最小难看值。 显然有转移: \[f[i][j][k][l]=\begin{case 阅读全文
posted @ 2025-08-26 13:30 Sinktank 阅读(18) 评论(0) 推荐(0)
摘要: P13586 [NWRRC 2023] First Solved, Last Coded 参考题解:this by littleKtian。 我们令 \(f[i][j][len]\) 为 \(a,b\) 中,分别以 \(i\) 和 \(j\) 为左端点,长度为 \(len\) 的区间能否匹配。 我们 阅读全文
posted @ 2025-08-26 11:20 Sinktank 阅读(23) 评论(0) 推荐(0)
摘要: CF875D High Cry ~ Codeforces 我们令: \(L[i]\) 为最小的 \(j\le i\) 使得 \(\max a[j\sim (i-1)]<a[i]\)。 \(R[i]\) 为最大的 \(j\ge i\) 使得 \(\max a[(i+1)\sim j]\le a[i]\ 阅读全文
posted @ 2025-08-25 17:41 Sinktank 阅读(14) 评论(0) 推荐(0)
摘要: 状压 DP 是动态规划的一种,通过将状态集合压缩成一个整数以实现状态转移的目的。 其中状态集合由若干个独立状态组成。很多情况下,每种独立状态都只有 \(2\) 种取值,也即二元状态。这种情况下,我么经常用 \(n\) 位二进制数来表示这 \(n\) 个二元状态组成的集合。 P1896 [SCOI20 阅读全文
posted @ 2025-08-24 23:12 Sinktank 阅读(59) 评论(0) 推荐(1)
摘要: 曾经拥有真的太好了 阅读全文
posted @ 2025-08-19 07:54 Sinktank 阅读(576) 评论(8) 推荐(5)
摘要: P3200 [HNOI2009] 有趣的数列 给出另一种转化思路,模拟赛的时候想到的。 将我们构造的序列看作 \(n\) 个点 \((a_1,a_2),(a_3,a_4),\dots,(a_{2n-1},a_{2n})\)。 题目的限制条件转化为: \(a_i\) 构成 \(1,2,\dots,2n 阅读全文
posted @ 2025-08-14 14:18 Sinktank 阅读(35) 评论(0) 推荐(0)
摘要: P10185 [YDOI R1] Necklace 容易写出答案为: \[\large\sum\limits_{i=1}^n\Big(2^{S-a_i}\sum\limits_{j=1}^{a_i}(C_{a_i}^j\times v_i^j)\Big) \]其中 \(S\) 为 \(a_i\) 之 阅读全文
posted @ 2025-08-14 12:02 Sinktank 阅读(11) 评论(0) 推荐(0)
摘要: P1516 青蛙的约会 实际上是一个关于\(k,s\)的不定方程: \[x+km+sL=y+kn \]很容易理解,就是走了\(x\)步之后,两只青蛙相差\(s\)圈相遇。 变形得: \[k(m-n)+sL=y-x \]有解\(\iff \gcd(m-n,l) \mid y-x\)。 exGCD先解决 阅读全文
posted @ 2025-08-03 17:28 Sinktank 阅读(19) 评论(0) 推荐(0)
摘要: 中国剩余定理(CRT) P1495 【模板】中国剩余定理(CRT)/ 曹冲养猪 对于线性同余方程组: \[\begin{cases} x\equiv a_1\pmod{b_1}\\ x\equiv a_2\pmod{b_2}\\ \dots\\ x\equiv a_n\pmod{b_n}\\ \en 阅读全文
posted @ 2025-08-03 15:36 Sinktank 阅读(70) 评论(0) 推荐(0)
摘要: 本质上是一道统计点对之间贡献的题目。 将每个奶牛看作一个点对\((v_i,x_i)\),\(i\)能对\(j\)产生贡献,当且仅当下面条件其一成立: \(v_i\le v_j,x_i>x_j\),此时的贡献为\((x_i-x_j)\times v_j\)。 \(v_i\le v_j,x_i<x_j\ 阅读全文
posted @ 2025-07-29 13:54 Sinktank 阅读(25) 评论(0) 推荐(1)
摘要: P3925 aaa被续 题目描述没看懂(雾) 简单解释一下: 对于节点\(u\),将子树\(u\)中的权值从大到小排序,记“权值乘排名之和”为\(u\)的贡献。 输出总贡献。 下文定义\(w[u]\)为\(u\)的权值,\(siz[u]\)为子树\(u\)的大小。 考虑每个节点对答案的贡献,看起来比 阅读全文
posted @ 2025-07-27 19:49 Sinktank 阅读(37) 评论(0) 推荐(0)
摘要: 补题中~ A - Vacation Validation 枚举判定。 时间复杂度\(O(n)\)。 点击查看代码 #include<bits/stdc++.h> using namespace std; string s; int n,l,r; bool solve(){ for(int i=l;i 阅读全文
posted @ 2025-07-27 11:08 Sinktank 阅读(301) 评论(0) 推荐(0)
摘要: 写题解 = 让世界知道我活过 阅读全文
posted @ 2025-07-23 22:06 Sinktank 阅读(21) 评论(0) 推荐(0)
摘要: P1966 [NOIP 2013 提高组] 火柴排队 结论:当且仅当\(a\)中第\(i\)小和\(b\)中第\(i\)小配对时,答案最优。 证明:我们取\(a_i<a_j,b_i<b_j\),即证明\((a_i,b_i)(a_j,b_j)\)这种配对方案,一定比\((a_i,b_j)(a_j,b_ 阅读全文
posted @ 2025-07-23 17:02 Sinktank 阅读(43) 评论(0) 推荐(0)
★CLICK FOR MORE INFO★ TOP-BOTTOM-THEME
Enable/Disable Transition
Copyright © 2023 ~ 2025 Sinktank - 1328312655@qq.com
Illustration from 稲葉曇『リレイアウター/Relayouter/中继输出者』,by ぬくぬくにぎりめし.