标签:
#include<iostream> //#include<bits/stdc++.h> using namespace std; #define maxn 30 struct Node{ int num; Node *next[maxn]; Node() { num=0; for(int i=0;i<maxn;i++) { next[i]=NULL; } } }N; void add(char x[]) { Node *p=&N; for(int i=0;x[i];i++) { int xx=x[i]-‘a‘; if(p->next[xx]==NULL) p->next[xx]=new Node; p=p->next[xx]; p->num++; } } int findn(char x[]) { Node *q=&N; for(int i=0;x[i];i++) { int xx=x[i]-‘a‘; if(q->next[xx]==NULL) return 0; else q=q->next[xx]; } return q->num; } int main() { int n,m; char str[30]; while(gets(str)&&str[0]!=‘\0‘) { add(str); } while(cin>>str) { cout<<findn(str)<<endl; } }
标签:
原文地址:http://www.cnblogs.com/wangmenghan/p/5722452.html