AcWing 835. 【struct结构体实现】Trie字符串统计
原题链接
简单
作者:
不二曦
,
2024-08-04 16:12:58
,
所有人可见
,
阅读 1
C++ 代码
#include<bits/stdc++.h>
using namespace std;
struct Node{
int cnt = 0;
Node* child[26];
};
Node* head = new Node();
void insert(string s){
Node *p = head;
for(char c:s){
int u = c - 'a';
if(p->child[u] == nullptr){
p->child[u] = new Node();
}
p = p->child[u];
}
p->cnt += 1;
return;
}
int find(string s){
Node *p = head;
for(char c:s){
int u = c - 'a';
if(p->child[u] == nullptr) return 0;
p = p->child[u];
}
return p->cnt;
}
int n;
int main(){
cin>>n;
while(n--){
char op;string s;
cin>>op>>s;
if(op == 'I'){
insert(s);
}else{
cout<<find(s)<<endl;
}
}
}