专栏文章

AGC040B Two Contests

AT_agc040_b题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@miq8tweg
此快照首次捕获于
2025/12/04 00:50
3 个月前
此快照最后确认于
2025/12/04 00:50
3 个月前
查看原文
介绍一个比较直观的想法。
考虑从相互包含的区间入手。
对于区间 aba\sube b,如果 bbaa 分在同一组,则不会影响答案;如果不分在同一组,且另一组此时非空,那么有可能会使答案减小。
所以 a,ba,b 分在同一组不劣,且 bb 不会有任何贡献。
我们只留下被包含的区间。那么将这些区间按左端点排序后,右端点也是升序,最优策略一定是分成一段前缀和一段后缀。
证明可以考虑调整法,从前缀和后缀中各选一个数交换,答案一定不会更优。
那么预处理前缀答案和后缀答案即可。
但是注意,我们一开始的结论是基于 “另一组此时非空” 的。所以如果 bb 单独成一组,就有可能得到更优的答案。计算每个区间单独成组的答案即可。
时间复杂度 O(nlogn)O(n\log n)

评论

0 条评论,欢迎与作者交流。

正在加载评论...