上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 22 下一页
摘要: 树上的边差分,x++,y++,lca(x,y)-=2. m条边可以看做将树上的一部分边覆盖,就用差分,x=1,表示x与fa(x)之间的边被覆盖一次,m次处理后跑一遍dfs统计子树和,每个节点子树和val=1,说明割去这条边后只有一种方案,val=0,说明割去后随便再割一条都行,有m中方案。 题很简单 阅读全文
posted @ 2022-07-25 09:40 YHXo 阅读(65) 评论(0) 推荐(0)
摘要: 对于一个非叶节点,不管是否要交换子树,其左右子树内部的逆序对数都不会受影响(内部的顺序并不会影响外部产生的逆序对数),受影响的是跨左右子树的情况,所以我们考虑统计这一部分的逆序对数。节点x的左右子树根节点为p,q,u+=size[t[p].rc] * size[t[q].lc],交换后 v+=siz 阅读全文
posted @ 2022-07-24 22:21 YHXo 阅读(44) 评论(0) 推荐(0)
摘要: 相当于是线段树合并的模板题,比(雨天的尾巴)还要板。 唯一注意的是线段树的更新,因为同一子树中可能有多种颜色占主导地位,要输出编号和,比如一颗子树中,1出现3次(最多),3出现3次,那么应该输出4。 1 #include<bits/stdc++.h> 2 #define ll long long 3 阅读全文
posted @ 2022-07-24 15:58 YHXo 阅读(62) 评论(0) 推荐(0)
摘要: 显然的树上差分问题,最后要我们求每个点数量最多的物品,考虑对每个点建议线段树,查询子树时将线段树合并可以得到答案。 用动态开点的方式建立线段树,注意离散化。 1 #include<bits/stdc++.h> 2 using namespace std; 3 const int N = 1e5 + 阅读全文
posted @ 2022-07-24 14:53 YHXo 阅读(47) 评论(0) 推荐(0)
摘要: 好久没打主席树了,都忘了怎么用了...... 假设我们选了一些数能构成[0,x]范围内的所有值,下一个要加的数是k(k<=x+1),那么可以取到[0,x+k]内的所有取值,所以有一种做法: 对于每个询问区间,先排序,依次加入k,k<=x+1时,取到[0,x+k];k>x+1,则x+1不能取到,就是答 阅读全文
posted @ 2022-07-23 17:49 YHXo 阅读(38) 评论(0) 推荐(0)
摘要: 题目描述 小 B 喜欢玩游戏。 有一天,小 B 在玩一个序列上的游戏,他得到了正整数序列{ai}以及一个常数c 。 游戏规则是,玩家可以对于每一个ai 分别加上一个非负整数x ,代价为 x2,完成所有操作之后,需要额外花费的代价就是所有相邻位置上数之差的绝对值总和再乘上c 。 小 B 觉得这个游戏很 阅读全文
posted @ 2022-07-23 15:23 YHXo 阅读(193) 评论(2) 推荐(0)
摘要: 序列s中的数就是要选的堆的编号,假设要选的有i个石子,这i个染为红色,剩下j个染为蓝色,i+j=x,i=x-j,那么对答案的贡献是|x-2j|。那么只要我们选的有i个石子,贡献就是这么多,所以我们可以求出选取数量为i的方案数有si个,那么答案就是∑ 𝑠𝑖|𝑥 − 2𝑖| (1=<i<=x). 阅读全文
posted @ 2022-07-22 15:17 YHXo 阅读(40) 评论(0) 推荐(0)
摘要: dfs一遍求出以每个节点为根的子树大小,然后枚举n的约数,对于每个约数i,统计sz[ ]是i的倍数的有多少个(开桶统计),如果有n/i个则答案+1。 这道题也就是个结论题,画图分析一下。复杂度O(n*sqrt(n)) 1 #include<bits/stdc++.h> 2 using namespa 阅读全文
posted @ 2022-07-22 14:24 YHXo 阅读(39) 评论(0) 推荐(0)
摘要: 因为若一个时间限制满足题意,则所有比它大的时间限制一定都满足题意,因此本题答案具有单调性,可以想到二分答案求解。 本题思路不是很难,但细节和代码实现比较复杂。 见牛人博客:https://www.luogu.com.cn/blog/TEoS/p1084-yi-qing-kong-zhi 1 #inc 阅读全文
posted @ 2022-07-21 16:50 YHXo 阅读(80) 评论(0) 推荐(0)
摘要: 对于一条路径,s-t,位于该路径上的观察员能观察到运动员当且仅当以下两种情况成立:(d[ ]表示节点深度) 1.观察员x在s-lca(s,t)上时,满足d[s]=d[x]+w[x]就能观察到,所以我们在这条路径上每个点都放置一个d[s]的物品(差分实现),所有路径处理完后dfs一遍,查询每个节点d[ 阅读全文
posted @ 2022-07-21 15:09 YHXo 阅读(54) 评论(0) 推荐(0)
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 22 下一页