2025.11.10模拟赛

赛时T1线段树分治30min想到

1h想到

然后想T2,想到T2的一个贪心做法,考虑将扩展,使得和尽可能地缩小,然后再暴力往两边进行扩展

写完后只剩2h了,所以进行了一个决策,不写T2的拍了,其实也是不知道怎么写T2的暴力,赛后发现其实一个可行性dp转移即可

先想的T4,肯定是根号分治,但是不知道怎么处理子树的修改,后来发现子树修改的dfn序在一个区间内

打了30pts暴力

后面的根号平衡复杂度还没太想明白

T3,最后1h想的,转化为数二进制0的个数,然后20min来不及打了,码了20走人

考虑到数位dp是求前缀然后差分,所以一个完整的靠左的二叉树答案可以快速求出,被限制的位数单独考虑向上跳即可

发现数位dp不太熟

其实瓶颈在于把L二进制拆分,考虑到十进制转二进制是短除法求余数,需要用到二进制除法,并且最终都是只处以2,复杂度不优,给通过10^9拆分,然后分别进行计算,把余数给到下一位,优化除法复杂度 \(O(n^2/900)\)

T2的原题是双序列拓展,把T3转化成任意时刻的\(s_l-s_r<=0\) 放到二维平面上,从0,0走到n,m

然后考虑什么时候不合法,就是 \(a_mx>b_mx\) 就有一条a 不能走

\(a_mn>b_mn\) 就有一条b不能走

要想合法,两个条件都得反过来,所以一定能找到一个十字图形,左上的就是从左上角到达边界任意,右下角一样

然后按照刚才的限制递归求解即可,维护前缀mn,mx,后缀。。。

posted @ 2025-11-10 21:51  daydreamer_zcxnb  阅读(19)  评论(0)    收藏  举报