题解-冲刺[29,33]
29-异或
比较套路的01Tire,调试了2.5h,最后删调试信息的时候多删了就爆0了。
首先枚举 \(j\) 是套路,前后如果分别有一个 Tire的话,都异或上 \(a_j\) 就是翻转这一层的所有子树。
所以可以建两颗编号有映射的 Tire,分别记录每一层的 \(A_l*B_r,A_r*B_l\) ,修改的时候维护一下就行了。
29-异或 2
式子:\(a\text^b=a+b-2*(a\text&b)\) ,理解的话就是减掉所有进上去的位。
然后就是要求 \(f(n)=\sum\limits_{i=1}^n i\text &(n-i)\)
分 \(n\) 的奇偶讨论 :\(n\) 是偶数 ;
- \(i\)是偶数,则 \(n-i\) 是偶数,直接去掉最后一位就行,统计 \(f(n>>1)*2\)
- \(i\)是奇数,则 \(n-i\) 是奇数,则最后一位必定有贡献,统计 \(f((n>>1)-1)*2+(n/2)\)
\(n\) 是奇数;
- \(i,n-i\) 一奇一偶,最后一位必定没有贡献,直接统计 \(2*2*f(n>>1)\)
29-卡牌游戏
考虑建边,剩下的都比较可想。
30
只让我知道了 浮点数能不要用就别用 的深刻道理。
31-法阵
原题3100,yspm秒切%%%%。
没看出来一个一直困扰我的问题横纵左边翻转后是等价的,之后正常枚举+组合数/dp 就行了。
考前给了一个非常珍贵的教训,就是连续的思考超过一个小时就应该停手了,否则思考效率底下,下考场感觉很愚蠢。
31-军队
\(k\leq 10\) 一看就有操作,在线段树维护前 \(k\) 小的值和出现个数,合并区间 \(O(k)\) 的归并就行了。
注意这种问题都是这个套路,他的简化版就是维护最小值的值和个数,但是当你不知道最小值的时候,只能分块+桶维护。
32-保险箱
可以发现最后的合法集合都是一个数的倍数,因为 \(ax+by\) 能表示的数 \(c*gcd(x,y)\) 表示,然后预处理的时候剪枝就行,这题没想到,感觉还是数感太差。
32-字符串
很巧妙的方法推式子可以转化成弱化版山海经。
但是这不是重点,本题的重点是删除满足任意前缀的限制直接去找前缀和最小值的套路。
然后时刻维护一个后缀(扫描线),然后找前缀最小值就可以满足两个限制。
33-card
我以为是 \(n^4\) 的,但是眼瞎了没看到有一维肯定是 \(j-1\) ,所以就 \(n^3\) 了。
33-dojave
先推性质,推着推着可以推成一个区间不合法仅当每对数都是异或起来是 \(2^m-1\) 。
但是这貌似也不是很好做:匹配问题/复杂度根本没有不离谱的 可以考虑哈希,这题里哈希就非常秒,对复杂度降维打击。
33-drop
完全不会,颓的题解,但是有很多人切,所以如果不退役还要在思考总结,套路和之前一道agc有点像。
end
题解比较水了,不退役再多加思考补充一些细节吧,希望心态没事,希望可以睡好觉,希望明天走出考场时不是绝望的。

浙公网安备 33010602011771号