考场上看完题后想争取做出T1T3的,T1 AC了,但T3可惜没想出正解。

T1跟着题目走直接写出来了,挺简单的。
记录每层楼最近一次的更新,以及要不要为下一层浇水。

T2完全没思路,没看出规律,解法太巧妙了。
每次改都是改相邻的字母,所以操作可看作在1到n-1时,cha[i]=a[i]+cha[i-1]-b[i],那么记录各个奇数位和偶数位的差值和j和o。如果(j-o)%26==0,那么a[n]+cha[n-1]==b[n],输出yes;否则输出no。每次修改判断p是奇数偶数,让j或o加上x-a[p],然后再判断一次。

T3有点思路但不是正解,有点可惜。正解太阴了!!不过能把前三个点写出来,夸夸我自己。
对于第i个郁金香,每个位置小于i的第j个郁金香,如果j+a[j].r<i&&i-a[i].l>j,那么i与j不冲突,就可以两个郁金香都取。正解是把每个郁金香能在采的同时不与后面第一个不冲突的郁金香的位置记录下来(f[i+a[i].r+1].push_back(i),f[i]记录了从i起摘了不与i冲突的郁金香),然后dp,dp到i的时候先把j∈f[i]里所有的dp[j]搞进树状数组,用树状数组存当前能取的前面的最大的dp,然后加1。这样巧妙地将第j个郁金香的贡献在j+a[j].r+1时加入计算

T4原本想写的,但太复杂了,懒得写了。也不想补。

T5一点都不想写。

最后附个题解:http://www.zxoj.net/contest/6a519e4c0b09f5d3f6f1df20/file/20260716模拟赛题解.zip