• + 4 comments

    We can also use map with almost similar implementation. Key is required string and value is the number of occurance of that string. If a key is not present in map , it's value is '0' by default.

    #include <string>
    #include <iostream>
    #include <map>
    using namespace std;
    
    int main() {
        map<string,int> m;
        int n,q;
        string s;
        cin>>n;
        
        for(int i=0; i<n; i++){
            cin>>s;
            m[s]++;
        }
        
        cin>>q;
        for(int i=0;i<q;i++){
            cin>>s;
            cout<<m[s]<<endl;
        } 
        return 0;
    }