• codeforces722B


    Verse Pattern

     CodeForces - 722B 

    You are given a text consisting of n lines. Each line contains some space-separated words, consisting of lowercase English letters.

    We define a syllable as a string that contains exactly one vowel and any arbitrary number (possibly none) of consonants. In English alphabet following letters are considered to be vowels: 'a', 'e', 'i', 'o', 'u' and 'y'.

    Each word of the text that contains at least one vowel can be divided into syllables. Each character should be a part of exactly one syllable. For example, the word "mamma" can be divided into syllables as "ma" and "mma", "mam" and "ma", and "mamm" and "a". Words that consist of only consonants should be ignored.

    The verse patterns for the given text is a sequence of n integers p1, p2, ..., pn. Text matches the given verse pattern if for each i from 1 to n one can divide words of the i-th line in syllables in such a way that the total number of syllables is equal to pi.

    You are given the text and the verse pattern. Check, if the given text matches the given verse pattern.

    Input

    The first line of the input contains a single integer n (1 ≤ n ≤ 100) — the number of lines in the text.

    The second line contains integers p1, ..., pn (0 ≤ pi ≤ 100) — the verse pattern.

    Next n lines contain the text itself. Text consists of lowercase English letters and spaces. It's guaranteed that all lines are non-empty, each line starts and ends with a letter and words are separated by exactly one space. The length of each line doesn't exceed 100 characters.

    Output

    If the given text matches the given verse pattern, then print "YES" (without quotes) in the only line of the output. Otherwise, print "NO" (without quotes).

    Examples

    Input
    3
    2 2 3
    intel
    code
    ch allenge
    Output
    YES
    Input
    4
    1 2 3 1
    a
    bcdefghi
    jklmnopqrstu
    vwxyz
    Output
    NO
    Input
    4
    13 11 15 15
    to be or not to be that is the question
    whether tis nobler in the mind to suffer
    the slings and arrows of outrageous fortune
    or to take arms against a sea of troubles
    Output
    YES

    Note

    In the first sample, one can split words into syllables in the following way:

    in-tel
    co-de
    ch al-len-ge

    Since the word "ch" in the third line doesn't contain vowels, we can ignore it. As the result we get 2 syllabels in first two lines and 3 syllables in the third one.

    sol:看懂题意后这道题TMD就是到手速题,对于第i个字符串,询问其中元音字母个数是否等于ai。。。

    #include <bits/stdc++.h>
    using namespace std;
    typedef int ll;
    inline ll read()
    {
        ll s=0;
        bool f=0;
        char ch=' ';
        while(!isdigit(ch))
        {
            f|=(ch=='-'); ch=getchar();
        }
        while(isdigit(ch))
        {
            s=(s<<3)+(s<<1)+(ch^48); ch=getchar();
        }
        return (f)?(-s):(s);
    }
    #define R(x) x=read()
    inline void write(ll x)
    {
        if(x<0)
        {
            putchar('-'); x=-x;
        }
        if(x<10)
        {
            putchar(x+'0');    return;
        }
        write(x/10);
        putchar((x%10)+'0');
        return;
    }
    #define W(x) write(x),putchar(' ')
    #define Wl(x) write(x),putchar('
    ')
    const int N=105;
    int n,a[N];
    string S;
    int main()
    {
        int i,j;
        R(n);
        for(i=1;i<=n;i++) R(a[i]);
        for(i=1;i<=n;i++)
        {
            getline(cin,S);
            int Len=S.size(),cnt=0;
            for(j=0;j<Len;j++) if(S[j]=='a'||S[j]=='e'||S[j]=='i'||S[j]=='o'||S[j]=='u'||S[j]=='y') cnt++;
            if(cnt!=a[i]) return 0*puts("NO");
        }
        puts("YES");
        return 0;
    }
    /*
    input
    3
    2 2 3
    intel
    code
    ch allenge
    output
    YES
    
    input
    4
    1 2 3 1
    a
    bcdefghi
    jklmnopqrstu
    vwxyz
    output
    NO
    
    input
    4
    13 11 15 15
    to be or not to be that is the question
    whether tis nobler in the mind to suffer
    the slings and arrows of outrageous fortune
    or to take arms against a sea of troubles
    output
    YES
    */
    View Code
  • 相关阅读:
    Attribute特性 与 Reflection反射技术
    星星评分控件----------WebForm服务器控件开发系列
    CheckBox美化控件----------WinForm控件开发系列
    RadioButton美化控件----------WinForm控件开发系列
    分割线控件----------WinForm控件开发系列
    mysql数据库中自增ID不自增1的解决办法
    [WPF] 操作DataGrid单元格
    [WPF] DataGrid单元格中的TextBox绑定数据源
    WPF中同类型实体间的消息推送
    C#获取屏幕工作区大小
  • 原文地址:https://www.cnblogs.com/gaojunonly1/p/10645221.html
Copyright © 2020-2023  润新知