整体情况
思考时间用了一个半小时左右,偏长。
写代码的时间和注意力都不足了,就连前缀和也不想写了。
本次训练赛也暴露出了复杂度分析的bug,没有能力分析难以计算复杂度的程序。
A.AND, OR and square sum(CodeForces 1368D)
显然贪心让最大的尽量大,不过场上没有考虑到重复最大值/最大值的二进制位已满的情况。
场上虽然想到了变换操作后1数量不变,但是并没有想清楚怎么利用这个性质,就以为是废掉的性质了。
正解:用桶维护每一位的1数量,最后直接构造数字即可。
F.Coin Rows(CodeForces 1555C)
分析具体走法,容易发现Alice必然要在一个地方转弯,那么Bob只能取两段剩下的中的某一个,前缀和处理上面和下面的序列,取min(max(两段分别的段总和))即可。
G.Play Train(AtCoder abc225_d)
比赛时自然而然地想了可持久化并查集+链表,但没有注意到题目限制,输出总量的数量级是10^6,实际上链表大力模拟即可。