题目:点击打开链接
题意:输入两次字符串,每次输入n、m个,判断n个字符串中,有几个没在m中出现
思路:可以用字典树,也可以用map。
首先是字典树的代码:
#include <stdio.h>
#include <string.h>
struct node
{
int flag;
int z[26];
} num[1000001];
char s[100];
char ss[100];
int ns=0;
int newnode()
{
int p=ns;
ns++;
for(int i=0; i<26; i++)
{
num[p].z[i]=-1;
}
num[p].flag=0;
return p;
}
void creat()
{
int i,k;
scanf("%s",s);
k=strlen(s);
int qian;
qian=0;
int p;
for(i=0; i<k; i++)
{
if(s[i]>='A'&&s[i]<='Z')s[i]=s[i]-'A'+'a';//A-a;
int t=s[i]-'a';
if(num[