AT_abc200_f.[ABC200F] Minflip Summation

省选/NOI-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

我们有一个字符串 SS,由 0,1 和 ? 组成,TT 为 SS 重复 KK 次的结果。

如果我们把 TT 中每个 ? 都替换成 0 或 1,我们就能够得到 2Kq2^{Kq} 种不同的字符串,其中 qq 是 SS 中 ? 的数量。对于每个由如下规则生成的字符串,解决如下问题,把答案求和并模 109+710^9+7:

设 T′T' 为把 TT 中所有 ? 替换为 0 或 1 得到的字符串。我们会重复执行如下操作,直到 T′T' 中所有元素均相同。最少需要多少次操作?

  • 选择两个整数 l,rl,r 满足 1≤l≤r≤∣T′∣1 \le l \le r \le |T'|,把 SS 的第 ll 个到第 rr 个字符取反。取反的意思是,0 变为 1,反之亦然。

输入格式

输入格式如下:

SS
KK

输出格式

输出答案。

输入输出样例

  • 输入#1

    101
    2

    输出#1

    2
  • 输入#2

    ?0?
    1

    输出#2

    3
  • 输入#3

    10111?10??1101??1?00?1?01??00010?0?1??
    998244353

    输出#3

    235562598

说明/提示

数据范围:1≤∣S∣≤1051 \le |S| \le 10^5,1≤K≤1091 \le K \le 10^9。

输入解题思路,AI测评打分。不知道怎么写?

首页