Cod sursa(job #3209136)

Utilizator alexcmeciu1Cmeciu Alexandru Cristian alexcmeciu1 Data 2 martie 2024 00:34:57
Problema Trie Scor 40
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.04 kb
#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;
}