比赛 20150714B 评测结果 AAAAAAAAAAAAW
题目名称 加利福尼亚旅店 最终得分 92
用户昵称 NVIDIA 运行时间 0.038 s
代码语言 C++ 内存使用 0.29 MiB
提交时间 2015-07-14 10:41:09
显示代码纯文本
#include<cstdio>
#include<cstdlib>
#include<cmath>
#include<stdio.h>
#include<iostream>
#include<string>
using namespace std;

int find(string a,string b)
{
	int i,j;
	for(i=0;i<a.length();i++)
	{
if(a[i]=='*')
{
if(i==a.length()-1)
return true;
string c=a.substr(i+1);
for(j=i;j<b.length();j++)
if(find(c,b.substr(j)))  return 1;
}
		   else{
			   if(i>=b.length()) return 0;
			   if(a[i]=='?')  continue;
			   if(a[i]!=b[i]) return 0;}
	}return 1;
}
int main()
{
     freopen("hotela.in","r",stdin);
freopen("hotela.out","w",stdout);	 
	int ans;
	  string a,b;
	  while(cin>>a)
	  {
		  int k;
          ans=0;
		  scanf("%d",&k);
		   while(k--)
		   {
		
			   cin>>b;
			   if(find(a,b)) ans+=1;
		   }
		   printf("%d\n",ans);
	  }
	  return 0;
}