比赛 “Asm.Def战记之太平洋”杯 评测结果 AAWAAWWATT
题目名称 Asm.Def谈笑风生 最终得分 50
用户昵称 Steve 运行时间 4.264 s
代码语言 C++ 内存使用 2.60 MiB
提交时间 2015-11-02 08:46:51
显示代码纯文本
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
const int _maxn=100010;
struct e
{
    char c[20];
    int l;
}a[_maxn];
int n;
void read()
{
    int m;
    char s[30];
    scanf("%d",&n);
    int k=0,l1,o;
    for(int p=1;p<=n;p++)
    {
        scanf("%d%s",&m,s);
        if(m==1)
        {
            l1=a[++k].l=strlen(s);
            for(int q=0;q<l1;q++)
                a[k].c[q]=s[q];
        }
        if(m==2)
        {
            l1=strlen(s);
            for(int i=1;i<=k;i++)
            {
                if(l1==a[i].l)
                {
                    o=0;
                    for(int j=0;j<l1;j++)
                    {
                        if(a[i].c[j]==s[j] || s[j]=='*' || a[i].c[j]=='*')
                            o++;
                        else
                            break;
                    }
                    if(o==l1)
                    {
                        cout<<"YES"<<endl;
                        break;
                    }
                }
                if(i==k)
                    cout<<"NO"<<endl;
            }
        }
    }
}
int main()
{
    freopen("asm_talk.in","r",stdin);
    freopen("asm_talk.out","w",stdout);
    read();
    return 0;
}