第五十八次

A

注意到查询时 {ai|lir}(去重)只会有 210 种,先预处理出每一种的背包数组,可以 bitset 压空间。

现在只需支持修改,以及查询 {ai|lir}(去重),线段树上每个节点 [l,r] 维护 {ai|lir}(去重)的状压值即可。

B

可以发现如果序列 x 前后两部分最大值相等,一定可以造出符合要求的矩阵,

所以问题变为统计 1xiK,且前后两部分最大值相等的序列 x 个数。

f(k) 表示 K=kx 序列的个数,考虑枚举 x 序列的最大值,

不难得出最大值为 i 时,x 序列有 (in(i1)n)(im(i1)m) 种,

于是 f(k)=i=1k(in(i1)n)(im(i1)m)

K 有点大,但 f(k)n+m+1 次多项式,所以可以拉插出 f,然后将 K 代入即可。

C

注意到有超过两种颜色的边一定有 1 的贡献,所以只需考虑有不超过两种颜色的边的选择方案。

点分治。先把每个询问挂到其分治重心(点分树 LCA)上。

分治 u 点时,对其分治子树中每个点 i 处理 fi,0/1,0/1 表示 ui 这条链,链顶选择第 1/2 种颜色,链底选择第 1/2 种颜色的最大贡献,

为了方便合并,还可以再处理 gi,0/1=max{fi,0/1,0,fi,0/1,1}f,g 容易树上 DP 求出。

u 点上每个询问 x,y,枚举 ux,uy 链顶选择哪种颜色,合并 gx,gy 统计答案即可。

D

啥玩意,看不懂啊。

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