Match Substring After Replacement LeetCode solution in C++
1class Solution {2public:3bool matchReplacement(string s, string sub, vector<vector<char>> &mappings) {4int m(size(s)), n(size(sub));5unordered_map<char, unordered_set<char>> mp;67auto doit = [&](int ind) {8for (int i = ind, j = 0; i < ind + n; i++, j++) {9if (s[i] == sub[j] or mp[sub[j]].count(s[i])) continue;10return false;11}12return true;13};1415for (auto &mapping : mappings) mp[mapping[0]].insert(mapping[1]);16;17for (int i = 0; i <= m - n; i++)18if (doit(i)) return true;19return false;20}21};