Can Convert String in K Moves LeetCode solution in C++
1class Solution {2public:3bool canConvertString(string s, string t, int k) {4int m = s.length(), n = t.length(), count = 0;5if (m != n) return false;6unordered_map<int, int> mp;7for (int i = 0; i < m; i++) {8if (t[i] == s[i]) continue;9int diff = t[i] - s[i] < 0 ? 26 + t[i] - s[i] : t[i] - s[i];10if (mp.find(diff) == mp.end()) {11count = max(count, diff);12} else {13count = max(count, (mp[diff] * 26) + diff);14}15mp[diff]++;16if (count > k) return false;17}18return count <= k;19}20};