暴力
11011b
你配不上自己的野心,也辜负了曾经历的苦难
展开
-
Codeforece 990G. GCD Counting(点分治+暴力)
Codeforece 990G. GCD Counting(点分治+暴力)原创 2022-08-20 22:57:45 · 204 阅读 · 0 评论 -
Codeforces 1244F Chips(模拟)
题目链接:Chips 题意:给定一个有n个点环(3<=n<=2*10^5),每个点未黑色或白色,每过一秒当前点会变成自己和周边两个点中颜色最多的点的颜色,问k(问1<=k=10^9)秒后颜色情况; 题解:我们可以发现当一个点周围有至少一个点和自己颜色相同时这个点的颜色就一定不会改变,对于BBBWBWBB 或者BBBWBWBWWW这种类型的每一次变化后中间BWBW....BW就会被左右同化掉一个,而全是BWBW的类型可以通过k的奇偶判断,那么我们就可以先把所有BWBW左右端点存下来暴力更原创 2022-04-06 19:06:18 · 123 阅读 · 0 评论 -
Codeforces 600E Lomsat gelral(启发性合并/线段树合并)
题目链接:Lomsat gelral 题意:给定一棵以1为根的树,每个节点有一种颜色,求以每个节点为根的子树内出现次数最多的颜色编号和 题解:这题可以用线段树合并也可以用启发性合并做,我这里用的是启发性合并的做法,首先我们先找出每个点的重儿子(子树最多的儿子),因为只用了一个数组储存答案,所以每次都要清除更新过的点,防止干扰其他儿子的影响,我们可以每次处理时先遍历轻儿子,每次把轻儿子处理完后暴力清空其更新过的点,最后遍历重儿子(最后遍历的子树实际上可以不清空,因为回溯中也需要重新标记整颗树,保留重儿子可原创 2022-03-19 19:18:11 · 371 阅读 · 0 评论 -
Codeforces 677D Vanya and Treasure(思维)
本题思路参考自大佬https://blog.csdn.net/stl112514/article/details/51563993 我们可以发现,对于每个当前点到下一个点的最优路径一定是一段横(或没有)+一段竖(或没有),因为每个转折点一定位于上一步的同一行和下一步的同一列,所以我们可以枚举转折点,利用每个已经更新过的点来更新其所属横的每个点作为前往下一个点的转折点,利用vis将其标记用对应钥匙,并更新其上一个出发点到这个转折点的最小贡献,对于每个下一步,我们可以枚举同一列的点作为转折点,通过标记判断是否转载 2022-03-17 21:23:09 · 88 阅读 · 0 评论