一些东西 题解

A

fi 表示以最高位为 i 的数结尾的数列个数,有 fi=(22i1)(1+j=0i1fj(1122j+1))

证明:考虑最高位为 j 的数 u 接上最高位为 i 的数 y,x(y<x) 时,不合法当且仅当 xj 位为 1y=xu

假设任选 x 及后面最高位为 i 的数,xj 位为 1 的方案数为 2k,则 xj 位任意的总方案数为 2k+2k+2j

xj 位为 1 导致不合法的概率为 2k2k+2k+2j=122j+1

B

fi,0/1 表示 i 子树 DFS 序奇 / 偶位置和的最大值,

首先如果 i 所有孩子的子树大小都是偶数,那访问这些孩子的顺序就无所谓了,

否则考虑以 i 的至少一个大小为奇数的孩子为分界,

对所有大小为偶数的孩子 v,把 fv,0 更大的 vfv,1 更大的 v 分别放在其两侧,

这样就可以对所有 v 取到 max(fv,0,fv,1) 的贡献。

然后考虑剩下 c 个大小为奇数的孩子 v,可以发现一半 v 取到 fv,0,一半 v 取到 fv,1,贪心即可。

C

对每个 1 的位置 i,考虑 LCP(x,n)=i1x 的贡献,

即考虑 [1,i1] 位与 n 相同,i 位填 0,后面 ni 位任意填的数的贡献。

k=ni,前 i1 位中有 c1,则这些数的贡献为:

i=0k(ki)fi+c

Sol 1

x1=1+52x2=152,则:

i=0k(ki)fi+c=15(x1ci=0k(ki)x1ix2ci=0k(ki)x2i)=15(x1c(x1+1)kx2c(x2+1)k)

预处理需要预处理的东西即可。

5 好像不是二次剩余,直接扩域。

Sol 2

F=[01]B=[1110]I 为单位矩阵,则

i=0k(ki)fi+c=F×Bci=0k(ki)BiIni

显然 BI 有交换律,那么

F×Bci=0k(ki)BiIni=F×Bc(B+I)k

预处理需要预处理的东西即可。

D

枚举点 1 与谁在同一条直线上,可以得到这些平行线的斜率 ΔyΔx

类似 P5102 [JOI 2016 Final] 领地 地,一条直线可以唯一表示为 (x,y)|0x<Δx

表示对于所有 t(x+tΔx,y+tΔy) 在这条直线上。

对于每个点找出其在哪条直线上,如果找到恰好 k 条直线,输出答案即可。

E

首先把 ai,bi 都减去 i,此时 i,j 连通当且仅当 aiaj,bibj,称此时 j 覆盖 i

把所有点按 ai 排序,首先只有 bi 的后缀最小值位置可能产生贡献(因为其不被其他点覆盖),

ci 表示点 i 覆盖的所有点 jbj 的最大值,

则后缀最小值位置 i 产生贡献,当且仅当 cj<bi,其中 j 是上一个后缀最小值位置。

F

对每个人 u 考虑其能否成为答案。

u 相关的比赛,显然让 u 拿全部分即可。

剩下的人的分数肯定是最大值越小越好,所以平均分配即可。

拿个 multiset 维护这玩意。

G

x 这一维扫描线,拿个 multiset 维护此时所有平台的高度,

扫到当前波特的坐标时,根据题意更新波特的坐标即可。

H

TBA

I

这都不会做你退役吧

J

称到其它点的距离乘以权值之和的最小的点为“重心”。

随着时间推移,实际“重心”肯定逐渐向以 ai 为点权的“重心” u 移动,而每次修改后 u 最多只移动一步,

所以维护出这个 u,操作时将之前的实际“重心”向 u 移动直到继续移动答案变劣为止即可。

K

TBA

L

直接做

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