10 2021 档案
题解 P4113【HEOi2012】采花
摘要:分析 考虑对每一种花,它在区间内能做贡献当且仅当区间内有两朵以上该种类的花,所以我们对每一个右端点,使它左侧每一种花的倒数第二个位置做贡献,这样能保证贡献被统计正确,避免选漏,然后就转化为前缀问题,用树状数组 \(logn\) 即可解决,然后将询问按右端点排序,每次右移时将它前面同类型的贡献加一,前 阅读全文
posted @ 2021-10-31 11:43 漠寒· 阅读(36) 评论(0) 推荐(0)
题解 P2572序列操作
摘要:分析 对连续值和求和的询问都是比较板的,这里讲修改,赋值和翻转分别设置一个标记,思考它们的优先级,显然赋值高于翻转,所以在赋值时应清空翻转标记,在翻转时优先考虑能不能直接将赋值标记异或一,否则在改变自身即可。 Code #include<bits/stdc++.h> using namespace 阅读全文
posted @ 2021-10-31 11:29 漠寒· 阅读(79) 评论(0) 推荐(0)
题解 P1783 海滩防御
摘要:分析 首先看题目发现这是一个连通性问题,就是在某个半径下一些塔的控制范围有重叠部分,两塔有重叠就说明它们连成了一片,同理若某塔控制了海滩边缘,这一侧边缘也与它相连,海滩受保护当且仅当左右摊联通,显然这是一个满足二分的东西,半径越大可连的边单调不降,但我们并不需要二分,只需要一次找出所有边,然后按边权 阅读全文
posted @ 2021-10-31 09:32 漠寒· 阅读(61) 评论(0) 推荐(0)
2021.10.18考试总结
摘要:T1万花筒 Descrption 初始 \(m\) 条边,如果 \((u,v)\) 在图中,那么将 \(((u+1)modn+1,(v+1)modn+1)\) 也加入图中。求该图的最小生成树,\(1≤n≤10^9,1≤m≤10^5\)。 Solution 对于加入每条边,考虑它对连通块的贡献,你可以 阅读全文
posted @ 2021-10-19 08:39 漠寒· 阅读(72) 评论(0) 推荐(0)
题解 CF1579C Ticks
摘要:分析 题意 给出 \(n\),\(m\),\(k\),给出一个大小为 \(nm\) 的矩形。矩形仅包含 " * " 和 " . "。需要你用任意个仅包含 " * " 的开口向上 v 形结构,两边斜率为1,且边长严格大于 \(k\)(包含交点),来包含所有矩形的 " * "。 做法 用 \(vis(i 阅读全文
posted @ 2021-10-19 08:16 漠寒· 阅读(89) 评论(0) 推荐(0)