less than 1 minute read

<-E 290> Word Pattern

class Solution {
public:
    bool wordPattern(string pattern, string s) {
        stringstream ss(s);
        unordered_map<string,char> mp1;
        unordered_map<char,string> mp2;
        string str; 
        int i = 0;
        while(ss >> str){
            if(mp1[str] < 1 and mp2[pattern[i]].size() < 1){
                mp1[str] = pattern[i];
                mp2[pattern[i]] = str;
            }
            else if(mp1[str] != pattern[i] or mp2[pattern[i]] != str)
                return false;
            i++;
        }
        if(i < pattern.size()) 
            return false;
        return true;
        }
    
};