QOJ.ac

QOJ

시간 제한: 1 s 메모리 제한: 256 MB 총점: 100

#17441. 古代手稿

통계

波罗的海的考古学家们目前正致力于一个非常重要的项目,最近他们发现了一份古代手稿,这份手稿似乎对于理解他们正在探索的地区所居住的文化至关重要。手稿中充满了图画,因此科学家们能够对该文献的主题有一个大致的了解。

然而,手稿中也有文字部分,这让科学家们陷入了困境。除了书写所使用的语言非常古老之外,手稿的几个部分已被损毁,一些字母消失了,他们无法完全理解那里写了什么。

其中一位科学家说,手稿中的单词让他想起了一种语言,已知在这种语言中,任何单词里:

  • 连续的元音字母最多不能超过 $V_C$ 个,连续的辅音字母最多不能超过 $C_C$ 个;
  • 连续相同的元音字母最多不能超过 $V_E$ 个,连续相同的辅音字母最多不能超过 $C_E$ 个。

那位科学家离开小组去寻找更精确的信息。其他人在等待该科学家返回的同时,决定检查手稿中是否有内容与他的假设相矛盾,并估计接下来的工作量,因此他们想知道这份手稿可能有多少种不同的破译方式。我们必须帮助他们!

注:元音字母为 "aeiou",字母表中的其他 21 个字母为辅音字母。

输入格式

第一行包含四个整数 $V_E, V_C, C_E$ 和 $C_C$ ($1 \le V_E \le V_C \le 4, 1 \le C_E \le C_C \le 4$),由单个空格分隔。

第二行包含一个从手稿中提取的单词,由最多 15 个拉丁字母小写字母组成,其中缺失的字符(如果有)用 * 表示。

输出格式

一个整数,表示仅根据给定的约束条件,可以组成多少种合法的单词。你可以认为答案将符合 64 位有符号整数。可能科学家的关于语言的猜想是不正确的,从而无法组成任何合法的单词;在这种情况下,答案显然为 0。

样例

输入样例 1

1 1 1 1
a**

输出样例 1

105

输入样例 2

1 1 1 1
b*i

输出样例 2

0

输入样例 3

1 2 1 2
ancient

输出样例 3

1

输入样例 4

4 4 4 4
man****ipt

输出样例 4

261870

输入样例 5

2 2 2 2
*boi*

输出样例 5

546

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.