20230924模拟赛

20230924模拟赛

时间安排

  • 8:40 T1暴力完成

  • 9:00 由于发现T1暴力可以直接写成log的

  • 9:30 把T1写完对拍,开T2

  • 9:50 想到T2状压40,开写,同时发现T1对拍挂了

  • 10:10 先开T3,只会暴力分

  • 10:30 T3仍然只会暴力,先写吧

  • 10:45 暴力完成,改T1

  • 11:15 T1改完了,对拍

  • 11:25 T4一档也不会/kk,期望式子没出来

  • 11:35 打算再想想T3

  • 11:50 啥也没想出来,对拍结束,检查代码,提交

总结

T1耗费时间太长,思维今天感觉寄的,脑子根本不转,有点困(估计昨晚洗澡睡晚了)。

题解

T1

最短路,没啥说的

T2

一道很妙的题,对区间端点做前缀和,把左端点看作限制,右端点看作状态,用组合推式子。

T3

性质题数据结构维护

[1,x] 的二进制下 \(1\) 的个数为奇数的个数为 x/2+(x&1||popcount(x)&1)

证明:

蒟蒻数学归纳法没证出来,考虑用性质证

对于一个偶数 \(k\) 二进制下 \(1\) 的个数若为奇数,则 \(k+1\) 二进制下 \(1\) 的个数必定为偶数且为 \(k\) 二进制下 \(1\) 的个数 \(+1\)\(k+1=k|1\)),若 \(k\) 二进制下 \(1\) 的个数若为偶数,则 \(k+1\) 二进制下 \(1\) 的个数必定为奇数。

所以把偶数 \(k\) 和奇数 \(k+1\) 绑定,则两个数里必定有且只有一个二进制下 \(1\) 的个数若为奇数。

所以当 \(x\) 为奇数,一共有 \(\frac{x+1}{2}\) 对,即 \(\left \lfloor \frac{x}{2} \right \rfloor +1\),为 x/2+1

\(x\) 为偶数,一共有 \(\frac{x}{2}\) 对,且多一个偶数,只需要再判断一下这个偶数二进制下 \(1\) 的个数即可,即 \(\frac{x}{2} +\neg [2|popcount(x)]\),为 x/2+(popcount(x)&1)

所以总式子为 x/2+(x&1||popcount(x)&1)

补一个yzx的数学归纳法:

T4

组合推期望式子,点分治求解。

posted @ 2023-09-25 08:45  sunzz3183  阅读(11)  评论(0编辑  收藏  举报
Live2D