京セラプログラミングコンテスト2021(AtCoder Beginner Contest 200)
翻译中…
Problem Statement
翻译中…
We have a string $S$ consisting of 0, 1, and ?. Let $T$ be the concatenation of $K$ copies of $S$.
By replacing each ? in $T$ with 0 or 1, we can obtain $2^{Kq}$ strings, where $q$ is the number of ?s in $S$. Solve the problem below for each of these strings and find the sum of all the answers, modulo $(10^9+7)$.
翻译中…
Let
$T'$be the string obtained by replacing?in$T$. We will repeatedly do the operation below to make all the characters in$T$the same. At least how many operations are needed for this?
- Choose integers
$l$and$r$such that$1 \le l \le r \le |T'|$, and invert the$l$-th through$r$-th characters of$T$: from0and1and vice versa.
翻译中…
Constraints
翻译中…
$1 \le |S| \le 10^5$$1 \le K \le 10^9$
翻译中…
Input
翻译中…
Input is given from Standard Input in the following format:
翻译中…
S
K
翻译中…
Output
翻译中…
Print the answer as an integer.
翻译中…
样例
Input #1
101
2
Output #1
2
We have $T=$ `101101`, which does not contain `?`, so we just need to solve the problem for the only $T'=$ `101101`.
We can make all the characters the same in two operations as, for example, `101101` $\rightarrow$ `110011` $\rightarrow$ `111111`.
We cannot make all the characters the same in one or fewer operations.
Input #2
?0?
1
Output #2
3
We have four candidates for $T'$: `000`, `001`, `100`, and `101`.
Input #3
10111?10??1101??1?00?1?01??00010?0?1??
998244353
Output #3
235562598
Since the answer can be enormous, find it modulo $(10^9+7)$.
题目信息
题面与样例版权归 AtCoder 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。