首页 > 小红的不动点
头像 Leavery
发表于 2025-08-10 22:40:00
个人题解 A #include <iostream> using namespace std; int main() { int a,b,c,d; cin>>a>>b>>c>>d; cout<<((a==1)+(b 展开全文
头像 Whalica
发表于 2025-08-10 22:08:46
通过简单的观察不难发现,对于一个元素不重的数组,它的权值等价于它含的元素从 开始连续增加的最长长度。例如,对于数组 ,从 开始往大一个一个数,最多能数到 ,那么它的权值就是 。 通过这个观察结果,我们不难想到,只有当一个数组含元素 的时候,才开始记录权值。那么,我们的思路就围绕着数字 展开。 展开全文
头像 可爱抱抱呀😥
发表于 2025-08-11 17:06:04
DEF Java题解,代码已去除冗余~~~ D 小红的矩阵不动点 对于本来位置数值正确的,一定不要修改,只需要修改两个位置数值不对的,不让记录一下所有位置不对的格子本来需要的数字和实际的数字的情况,看是否可以通过交换两个点实现答案加2,否则,对于某个位置的已有数字,看是否有格子需要,此时增加为1,剩 展开全文
头像 Sellaris
发表于 2025-09-15 12:21:18
注意到不动点个数等价于数组的Mex,使用树上启发式合并(DSU on Tree) 统计每个子树的Mex累加即可。 ///*****Sellaris*****/// #include <bits/stdc++.h> #define ll long long #define x first 展开全文
头像 阿尔卑斯山小姐
发表于 2025-08-22 15:03:10
F题dfs序题解 考虑从1为根的子树开始累加贡献,不难发现,一颗子树的贡献为从1开始的连续段的长度,而在dfs序上,以k为根,子树大小为siz[k]的子树恰好为[dfn[k],dfn[k]+siz[k]-1]的一段连续区间,所以设初始贡献为sum=1,当sum+1出现在子树中时,sum++,这样以k 展开全文

等你来战

查看全部