先是半天没读懂题,然后开始诈胡:\(f[i][0/1]\) 表示前 \(i\) 位,最后一位填 0/1 最大得分,我搞个前缀按最优的填,后面全填 0 划水,就 win 了。用到了离散形式下的介值定理,非常精妙,打得好!
然后发现,应该拿出没坏掉的段来,逐段考虑,有两种情况。
0?????0
,这个case贡献必为偶数!????0
,如果第一个 ?
填 0 贡献为偶,否则为奇。先按最大化得分的方式填,奇偶性不对,flip 第一段,然后选一些 1 换成 0 即可。
rdc 签到题一顿乱打,浪费了很多时间,非常可恶。
solved by rdc 12. 签到
solved by rdc 194(-2)
原文:https://www.cnblogs.com/FST-stay-night/p/12656937.html