Codeforces Round 526 (Div. 2)
C
The Fair Nut and String
Codeforces
1500
原题
← BD →
翻译中…

The Fair Nut found a string $s$. The string consists of lowercase Latin letters. The Nut is a curious guy, so he wants to find the number of strictly increasing sequences $p_1, p_2, \ldots, p_k$, such that:

翻译中…
  1. For each $i$ ($1 \leq i \leq k$), $s_{p_i} =$ 'a'.
  2. For each $i$ ($1 \leq i \lt k$), there is such $j$ that $p_i \lt j \lt p_{i + 1}$ and $s_j =$ 'b'.
翻译中…

The Nut is upset because he doesn't know how to find the number. Help him.

翻译中…

This number should be calculated modulo $10^9 + 7$.

翻译中…

Input

翻译中…

The first line contains the string $s$ ($1 \leq |s| \leq 10^5$) consisting of lowercase Latin letters.

翻译中…

Output

翻译中…

In a single line print the answer to the problem — the number of such sequences $p_1, p_2, \ldots, p_k$ modulo $10^9 + 7$.

翻译中…

Note

翻译中…

In the first example, there are $5$ possible sequences. $[1]$, $[4]$, $[5]$, $[1, 4]$, $[1, 5]$.

翻译中…

In the second example, there are $4$ possible sequences. $[2]$, $[3]$, $[4]$, $[5]$.

翻译中…

In the third example, there are $3$ possible sequences. $[1]$, $[3]$, $[4]$.

翻译中…

样例

Input #1
abbaa
Output #1
5
InputCopy OutputCopy
Input #2
baaaa
Output #2
4
InputCopy OutputCopy
Input #3
agaa
Output #3
3
InputCopy OutputCopy
题目信息
题号
1084C
时间限制
1 s
内存限制
256 MB
标签
组合数学
动态规划
模拟

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。