AT_agc048_f [AGC048F] 01 Record
题目描述
すぬけくん得到了一个大黑板。すぬけくん非常高兴,首先在黑板上写下了一些正整数。接着,すぬけくん不断重复以下操作,直到黑板上的整数全部消失为止。
- 从黑板上选择一个整数并擦除。设被擦除的整数为 $x$。然后,将 $x$ 除以 $2$ 的余数记录在笔记本上。最后,如果 $x \geq 2$,则将 $x-1$ 写回黑板。
すぬけくん的记录由一个仅包含 `0` 和 `1` 的字符串 $S$ 表示。也就是说,すぬけくん在第 $i$ 次操作中选择的整数除以 $2$ 的余数为 $S_i$。
すぬけくん忘记了最初在黑板上写下的正整数的组合。请根据字符串 $S$,求出作为最初黑板上正整数组合的可能方案数。这里,正整数组合 $a$ 和 $b$ 不同,意味着存在某个整数 $v$,使得 $a$ 中 $v$ 的个数与 $b$ 中 $v$ 的个数不同。由于答案可能非常大,请输出对 $10^9+7$ 取模的结果。如果すぬけくん的记录有误,无法满足条件,则输出 $0$。
输入格式
输入通过标准输入给出,格式如下:
> $S$
输出格式
输出作为最初黑板上正整数组合的可能方案数,对 $10^9+7$ 取模。
说明/提示
## 限制
- $1 \leq |S| \leq 300$
- $S$ 是仅由 `0` 和 `1` 组成的字符串。
## 样例解释 1
作为最初黑板上整数的组合可能有 $\{1,2\}$、$\{3\}$ 共 $2$ 种。
## 样例解释 2
不存在满足条件的最初黑板上整数组合。
## 样例解释 3
作为最初黑板上整数的组合可能有 $\{2,2,2\}$、$\{2,4\}$、$\{6\}$ 共 $3$ 种。
由 ChatGPT 4.1 翻译