[关闭]
@yang12138 2018-10-22T20:05:25.000000Z 字数 809 阅读 1119

SHOI2017 分手是祝愿

未分类


原题链接:https://loj.ac/problem/2145

首先考虑给定一个串,如何按照给定的规则把串全部变成
可以证明,在最优方案里每个位置最多被翻转一次,而且最优方案只有一个算同一个.可以通过贪心的思路思考并证明:从大到小检查每个位置,如果当前位置是,显然需要翻转,如果不翻转,将不存在任何方案能使该位置变成;如果当前位置是,显然不能翻转,如果翻转了,要使这位变回,只能对这位再进行一次翻转,相当于没有翻转.以此类推,那么最优方案可以被唯一确定,时间复杂度是.

由以上推论可以知道,和翻转次数期望有关的只有最优翻转次数.
为最优翻转次数为的情况下翻转次数的期望.
显然当.

时,.

时,可以把式子转换成
需要用这个求解答案需要先求出,问题就转换成了如何求解.

,不唯一.
显然
通过可以求出
通过可以求出.
那么可以知道.

为初始序列的最优翻转次数.
注意特判时答案为.

最后答案乘上.

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注