摘要: 赛时情况 T1: 矩乘板子 T2:CF1555D Say No to Palindromes打了个暴力T了 T3:CF1117D Magic Gems 矩乘,递推式本来推对了,后来又改错了,最后又改回来了 T4:CF514E Darth Vader and Tree不会 T5: $\left \lf 阅读全文
posted @ 2023-07-15 11:07 固态H2O 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 前言 连通性找一个好用的板子真的很难 定义 强联通分量 双连通分量 割点与桥 定义以后再写吧 板子 Tarjan int nt, root, tmp, top, col; int dfn[M], low[M], vis[M], bel[M]; //dfn[u]->u的dfs序 low[u]->在 u 阅读全文
posted @ 2023-07-10 09:59 固态H2O 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 二分图の知识总理 First. 定义 万事都先需了解定义 简单来说,二分图(二部图)就是一种满足以下性质的图: 点集 \(V\) 的两个不相交子集 \(X\) 和 \(Y\) 可以组成这个图,且两个子集中,同集合的点之间没有任何边连接。 将两集合一个染黑,一个染白,每条边一定连接着一黑一白点。 \( 阅读全文
posted @ 2023-07-05 20:30 固态H2O 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 2023年7月5日16:18:09 【二分图】宿舍 一定要初始化,存边的vector也要初始化 2023年8月3日10:03:14 CF626F Group Projects 滚数不清空,亲人两行泪 2023年10月28日10:54:43 对于一个序列求删除某个元素后的某个值。 删除某个元素可以用拼 阅读全文
posted @ 2023-07-05 16:19 固态H2O 阅读(3) 评论(0) 推荐(0) 编辑
摘要: CF1179A Valeriy and Deque 更好的观看体验 思路 首先,每次操作后会将大的那个数排至队首。所以说,当队列中最大的那个数到达队首时,队首元素将不再改变,而其他的元素依次循环。因此,我们可以记录最大数不在队首之前的操作,在其到达队首之后,记录其余元素的循环节即可。注意:需要记录使 阅读全文
posted @ 2023-06-26 13:22 固态H2O 阅读(0) 评论(0) 推荐(0) 编辑
摘要: CF678D Iterated Linear Function 题意 $f_{i,x}=A\times f_{i-1,x} + B$ 且 $f_{0,x}=x$ 求 $f_{n,x}$。 思路 这道题的递推关系十分清晰。但由于数据范围大($1\le A,B,x\le 10^ 9,1\le n \le 阅读全文
posted @ 2023-06-17 08:26 固态H2O 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 喜欢奇数的面包师 问题描述 有$n$($n \le 100$)个面包师,每个面包师门上有粉笔画的横线,每个面包师有若干个喜欢的的面包师。 每个月门上粉笔横线数目为奇数的面包师将获奖,他获奖后会在他喜欢的面包师的门上加上一条粉笔横线,问第 $t$($t\le 1,000,000,000$)个月获奖的面 阅读全文
posted @ 2023-06-13 14:14 固态H2O 阅读(2) 评论(0) 推荐(0) 编辑
摘要: AT_abc203_D 题意 给出一个 $N \times N$ 的矩阵,然后依次枚举 $k \times k$ 的子矩阵。 对于 $k \times k$ 的子矩阵,一共有个 $k^2$ 元素,找出其中的中位数。这里的中位数是子矩阵中元素从大到小排列的第 $\left \lfloor \frac{ 阅读全文
posted @ 2023-06-03 09:23 固态H2O 阅读(7) 评论(0) 推荐(0) 编辑
摘要: #include <bits/stdc++.h> #define int long long using namespace std; const int N = 2e5 + 5, M = 10000 + 5; const int INF = 0x3f3f3f3f; int n, m, k; str 阅读全文
posted @ 2023-05-25 11:09 固态H2O 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 2023.5.20 完成P1122。初步了解树形DP 2023.5.21 什么DP?分治快乐! 2023.5.22 凸轮 2023.5.23 凸轮 2023.5.23 凸轮 2023.5.24 我怎么那么颓废啊 2023.5.25 凸轮 2023.5.26 模拟赛,打了第五,搜索题硬是想成DP 20 阅读全文
posted @ 2023-05-20 22:26 固态H2O 阅读(4) 评论(0) 推荐(0) 编辑
摘要: Robot Breakout(CF1196C) 思路 这道题因为平面极大,暴力枚举每个点肯定会超时。所以,我们不妨从机器人出发。 我们可以枚举每个机器人可以执行的操作: 位置从 $(X_i,Y_i)$ 变为 $(X_i-1,Y_i)$,即向左走。 位置从 $(X_i,Y_i)$ 变为 $(X_i,Y 阅读全文
posted @ 2023-05-17 21:23 固态H2O 阅读(5) 评论(0) 推荐(0) 编辑
摘要: DP训练题 题目描述 老师布置了$N$道作业题,题目编号$0$~$N-1$。编号0的题目必须做。如果做了第 $i$ 题,则第 $i + 1$题可做也可不做,直接跳到第 $i + 2$ 题。但不允许一次跳过超过一道题。 例如, ${0, 2, 3, 5}$ 是合法的,而 ${0, 2, 4, 7}$ 阅读全文
posted @ 2023-05-03 08:45 固态H2O 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 题意 有一个 $n\times n$ 大小的矩阵,初始均为 $0$,现在,给出 $m$ 个操作,使 $(x,y)$ 变为 $1$,问执行到第几个操作时存在一个 $3\times3$ 的全 $1$ 子矩阵。 思路 最容易想到的就是暴力枚举,每执行一次操作就在矩阵中判断是否存在题目要求的子矩阵,但是这样 阅读全文
posted @ 2023-04-30 12:02 固态H2O 阅读(2) 评论(0) 推荐(0) 编辑
摘要: #include<bits/stdc++.h> using namespace std; #define int long long const int MAXN = 2e5 + 5; int c[MAXN], ans[MAXN], a[MAXN], maxn, n, y; int lowbit(i 阅读全文
posted @ 2023-04-28 13:52 固态H2O 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 树状数组的用处 快速求和+快速修改,可以理解为动态前缀和 建立 这就是树状数组能快速求解信息的原因:我们总能将一段前缀 $[1, n]$ 拆成 不多于 $\boldsymbol{\log n}$ 段区间,使得这 $\log n$ 段区间的信息是 已知的。 于是,我们只需合并这 $\log n$ 段区 阅读全文
posted @ 2023-04-28 13:52 固态H2O 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 什么是并查集 并查集是一种用于管理元素所属集合的数据结构,实现为一个森林,其中每棵树表示一个集合,树中的节点表示对应集合中的元素。 ——摘自oiwiki 简单来说,并查集是一种可以快速求出一个元素的祖先的数据结构 并查集的初始化 通常,我们将每个节点的 $f_i$ 设为自己,即 $i$。 for(i 阅读全文
posted @ 2023-04-26 21:33 固态H2O 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 思路 首先,我们可以通过观察样例发现: 首行和尾行均有一排边界线 + +,所以我们可以先输出它。 当 $x>1$ 时,第二行开始和倒数第二行末尾有缺失的日子,所以我们将第二行开始和倒数第二行末尾单独操作。 如何确保格式 用变量 $d$ 储存输出到哪一天,依次递增,根据 $d$ 是否满足 $d<10$ 阅读全文
posted @ 2023-04-12 10:20 固态H2O 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 搬运dalao的模板 01背包问题: 无优化 for(int i=1;i<=n;i++) { for(int c=0;c<=m;c++) { f[i][c]=f[i-1][c]; if(c>=w[i]) f[i][c]=max(f[i][c],f[i-1][c-w[i]]+v[i]); } } 一维 阅读全文
posted @ 2023-04-12 08:08 固态H2O 阅读(2) 评论(0) 推荐(0) 编辑