Pagini recente » Cod sursa (job #202697) | Cod sursa (job #230145) | Cod sursa (job #1106840) | Cod sursa (job #772772) | Cod sursa (job #3209136)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("trie.in");
ofstream fout("trie.out");
map<string,int> mp;
char s[25];
int c,nr,maxim,cnt;
int main()
{
while(fin>>c>>s){
if(c==0){
mp[s]++;
}
else
if(c==1){
if(mp[s]>0)
mp[s]--;
}
else
if(c==2)
{
fout<<mp[s]<<'\n';
}
else
if(c==3){
maxim=0;
cnt=0;
for(auto el:mp){
int l,k;
k=l=0;
if(mp[el.first]>0){
while(l<el.first.size() && k<strlen(s)){
if(el.first[l]==s[k])
l++,k++;
else
l=el.first.size();
}
if(k>maxim)maxim=k;
}
}
fout<<maxim<<'\n';
}
}
return 0;
}