CF722B Verse Pattern

题目描述

给你一段由 $n$ 行组成的文本。每一行都包含若干由小写英文字母组成的、用空格分隔的单词。 我们定义一个音节为:仅包含恰好一个元音字母,其余可以为任意数量(也可以没有)的辅音字母的字符串。在英文中,以下字母被视为元音:'a'、'e'、'i'、'o'、'u' 和 'y'。 文本中每一个包含至少一个元音的单词都可以被划分为若干音节。每个字符必须属于恰好一个音节。例如,单词 "mamma" 可以按如下方式划分为音节:"ma" 和 "mma","mam" 和 "ma",或者 "mamm" 和 "a"。只包含辅音字母的单词应被忽略。 该文本的诗句模式(verse pattern)是一个长度为 $n$ 的整数序列 $p_{1}, p_{2}, ..., p_{n}$。如果对于每一行第 $i$ 行($1\le i\le n$),存在一种方式将本行的单词划分为若干音节,使得音节总数恰好为 $p_{i}$,则称该文本与给定的诗句模式相符。 现在给出文本与诗句模式,判断文本是否与该模式相符。

输入格式

输入的第一行为一个正整数 $n$($1 \leq n \leq 100$),表示文本的行数。 第二行为 $n$ 个整数 $p_{1},...,p_{n}$($0 \leq p_{i} \leq 100$),表示诗句模式。 接下来的 $n$ 行为具体的文本内容。文本仅包含小写英文字母和空格。保证所有行均非空、每行的开头和结尾均为字母、每两个单词之间恰好有一个空格。每行长度不超过 $100$ 个字符。

输出格式

若文本与诗句模式匹配,则输出一行 "YES"(不带引号);否则输出 "NO"(不带引号)。

说明/提示

在第一个样例中,可以将单词这样划分音节: `in-tel

co-de

ch al-len-ge

`由于第三行的单词 "ch" 不包含元音,因此可以忽略。最终第一、二行分别有 $2$ 个音节,第三行有 $3$ 个音节。 由 ChatGPT 5 翻译