第十次

A

注意 n2

B

枚举最小值,算最大值最小是多少。

把每个集合排序,用一个堆维护当前选出的集合,初始把所有集合的最小值加进去。

考虑枚举下一个最小值,需要弹出当前最小值,然后加入当前最小值在其集合中的后继。

每次更新答案即可。

C

每条边都会被算 (n2k2) 次,所以只需要算每条边只算一次的结果,即 i=1nj=i+1nf(i,j)

然后用一个神秘 DSU on tree 维护之,反正我不会写。

D

线段树上每个节点维护一个 {[l,r]},表示这个节点内宝石能表示出的区间集。

考虑 push up,可以发现 S1,S2 的合并结果为 {[l1+l2,r1+r2]|[l1,r1]S1,[l2,r2]S2}

之后扫描线去掉交集即可,随机数据能过。

posted @   Jijidawang  阅读(5)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示