AcWing 835. Trie字符串统计
原题链接
简单
作者:
双木_4
,
2024-11-03 11:28:00
,
所有人可见
,
阅读 2
C++ 代码
#include<iostream>
using namespace std;
const int N=2e5+10;
int cnt[N];
int son[N][26];
int n,idx;
string s;
void insert(string s){
int p=0;
for(int i=0;i<s.size();i++){
int u=s[i]-'a';
if(!son[p][u])
son[p][u]=++idx;
p=son[p][u];
}
cnt[p]++;
return ;
}
int find(string s){
int p=0;
for(int i=0;i<s.size();i++){
int u=s[i]-'a';
if(!son[p][u])
return 0;
p=son[p][u];
}
return cnt[p];
}
int main(){
scanf("%d",&n);
while(n--){
char op;
cin >> op >> s;
if(op=='I')
insert(s);
else
printf("%d\n",find(s));
}
return 0;
}