2024年3月2日

摘要: 由于只需要考虑相邻的位置,所以每一段连续的 F 是互不影响的,可以分别进行考虑。而连续的一段 F 又可以分成两类:靠边的和被夹在中间的。 靠边的 F 段较为简单,假定有 \(c\) 个 F ,不难发现只要让 EB 交错出现就可以达到最少次数 ,而让所有的 F 都变成最近的非 F 就可以达到最多次数 阅读全文

posted @ 2024-03-02 17:04 _XOFqwq 阅读(14) 评论(0) 推荐(0) 编辑

摘要: 我们先枚举所有子矩阵,验证其在不考虑重叠的情况下是否为 PCL 矩阵(dfs 求一遍联通块即可)。 然后将所有满足条件的矩阵存下来,最后朴素判断每个矩阵是否被其他矩阵包括,若没有矩阵包括它,则其对于答案的贡献为 \(1\),累加所有贡献即为最终结果。 时间复杂度是 \(O(n^6)\) 的。 思路很 阅读全文

posted @ 2024-03-02 17:03 _XOFqwq 阅读(24) 评论(0) 推荐(0) 编辑

摘要: PJ T1 首先容易发现每次都会取走 \(\dfrac{n-1}{3}+1\) 个苹果,因此 \(\lceil \dfrac{n}{\dfrac{n-1}{3}+1} \rceil\) 即为总天数。 然后我们可以注意到当第一次出现 \(n-1 \bmod 3=0\) 时第 \(n\) 个苹果会被取到 阅读全文

posted @ 2024-03-02 17:03 _XOFqwq 阅读(12) 评论(0) 推荐(0) 编辑

摘要: 题单。 A 从 \(i-1\) 与 \(i-2\) 转移即可。 #include<bits/stdc++.h> using namespace std; int n; int h[100031]; int dp[100031]; int main(){ cin>>n; for(int i=1;i<= 阅读全文

posted @ 2024-03-02 17:02 _XOFqwq 阅读(8) 评论(0) 推荐(0) 编辑

摘要: Living-Dream 系列笔记强势回归(雾) T1 并查集妙妙题。 很容易想到一种朴素的贪心策略: 对于所以物品按照价格从大到小排序, 然后每一个物品,找到最晚的没有卖物品的那一天卖掉此物品。 这样贪心的时间复杂度为 \(O(\max d_i \times n)\),可以通过。 考虑如何优化此贪 阅读全文

posted @ 2024-03-02 17:01 _XOFqwq 阅读(2) 评论(0) 推荐(0) 编辑

摘要: 看到这题很容易想到对于每个起点进行二分 + bfs check,但这样写显然 T 飞。 然后由此我们想到用并查集维护连通块做, 具体地,我们先建出图,令每个格子向其右、下格子连边,边权为高度绝对差, 然后将边权从小到大排序, 考虑每一条边,若其端点未被合并,则将它们合并为同一集合, 顺便维护连通块的 阅读全文

posted @ 2024-03-02 17:01 _XOFqwq 阅读(5) 评论(0) 推荐(0) 编辑

摘要: T1 有一个比较秒的 trick:虚拟点。 对于本题,我们设一虚拟点 \(n+1\) 表示水源,于是打井的操作即为与点 \(n+1\) 连边,将点权转为边权。 然后跑 kruskal 即可。 #include<bits/stdc++.h> #define int long long using na 阅读全文

posted @ 2024-03-02 17:00 _XOFqwq 阅读(5) 评论(0) 推荐(0) 编辑

摘要: 从 2023-12-9 开始记录。 遇到既有点权、又有边权的图论题,考虑设虚拟点。 树形 dp 一般从子树考虑设计状态。 状压 dp 一般先列出朴素方程再想二进制优化。 无向图 floyd 优化: 基于无向图的对称性,可以只跑上半部分,下半部分直接相同赋值即可。 阅读全文

posted @ 2024-03-02 17:00 _XOFqwq 阅读(13) 评论(0) 推荐(0) 编辑

摘要: 拓扑排序(\(\texttt{toplogical sort}\)): 在有向无环图(\(\texttt{DAG}\))中,将 \(n\) 个节点整理成一组排列,使得对于每一条边 \(u \to v\),\(u\) 在排列中的位置总是在 \(v\) 之前,我们称这样的排列为原图的拓扑序,找出一张图的 阅读全文

posted @ 2024-03-02 16:59 _XOFqwq 阅读(2) 评论(0) 推荐(0) 编辑

摘要: T1 经典的 toposort + dp, 可以说所有的按 topo 序的 dp 都是按照此题的套路。 令 \(dp_i\) 表示以 \(i\) 结尾的工作需要的最小时间。 题目明摆着就是要你按 topo 序转移, 于是在 toposort 板子中枚举邻接点的部分进行转移即可。 转移方程: \[dp 阅读全文

posted @ 2024-03-02 16:59 _XOFqwq 阅读(7) 评论(0) 推荐(0) 编辑