QOJ.ac

QOJ

حد الوقت: 11 s حد الذاكرة: 2048 MB مجموع النقاط: 100

#2922. 单词谜题

الإحصائيات

年轻的安娜最近沉迷于手机上的一款填字游戏。填字游戏是一个包含若干空格的单个英文单词。每个空格代表一个需要填入的字母。例如,单词 “programming” 可能以谜题 p_o_rammin_ 的形式出现。在解谜时,安娜首先点击一个空格,然后开始输入字母。一旦安娜输入一个字母,应用程序会自动跳转到下一个空格。当已填入字母的右侧没有更多空格时,应用程序会跳回到单词的开头并从那里继续。安娜会一直输入直到所有空格都被填满。为了解决谜题 p_o_rammin_,安娜可以点击第一个空格并输入 rgg。或者,她也可以点击第二个空格,然后输入 ggr

来自 Pixabay 的图片

有一天,安娜向你展示了她解决的一个谜题以及她输入的字母序列。你能告诉她所解决的谜题有多少种不同的可能性吗?如果两个谜题的空格位置不同,则它们是不同的。例如,如果谜题单词是 programming 且安娜输入了 rgg,则可能有两种可能的谜题:p_o_rammin_pro__ammin_。由于答案可能很大,请输出答案对 $1\,000\,000\,007$ 取模的结果。

输入格式

第一行包含一个字符串 $p$,表示谜题单词 ($1 \le |p| \le 10^5$)。第二行包含一个字符串 $s$,表示安娜输入的字母序列 ($1 \le |s| \le \min(50, |p|)$)。两个字符串均仅包含小写英文字母。

输出格式

输出安娜可能解决的不同谜题的数量,对 $1\,000\,000\,007$ 取模。如果安娜不可能通过输入 $s$ 来解决该谜题,则输出零。

样例

输入格式 1

programming
rgg

输出格式 1

2

输入格式 2

aabbaa
aba

输出格式 2

12

输入格式 3

acca
acac

输出格式 3

0

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.