| 比赛 | “Asm.Def战记之太平洋”杯 | 评测结果 |  | 
    | 题目名称 | Asm.Def谈笑风生 | 最终得分 | 0 | 
    | 用户昵称 | liuyu | 运行时间 | 0.000 s | 
    | 代码语言 | C++ | 内存使用 | 0.00 MiB | 
    | 提交时间 | 2018-11-07 18:33:54 | 
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
int n,opt;
string s,t;
set<string>se;
int main(){
	//freopen("a.in","r",stdin);
	freopen("asm_talk.in","r",stdin);
	freopen("asm_talk.out","w",stdout);
	ios::sync_with_stdio(false);
	cin>>n;
	while(n--){
		cin>>opt>>s;
		if(opt==1)se.insert(s);
		else{
			int ok=0,pos=-1;t=s;
			for(int i=0;i<s.size();i++)if(s[i]=='*')pos=i;
			if(pos>=0){
				for(char i='a';i<='z';i++){
					t[pos]=i;
					if(se.count(t)){ok=1;break;}
				}
				if(ok)cout<<"YES"<<endl;
				else cout<<"NO"<<endl;
			}else{
				if(se.count(s))cout<<"YES"<<endl;
				else cout<<"NO"<<endl;
			}
		}
	}
	return 0;
}