Can Convert String in K Moves LeetCode solution in C++

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

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0