Custom Sort String LeetCode solution in C++

1
class Solution {
2
public:
3
string customSortString(string order, string s) {
4
map<char, int> mp;
5

6
for (int i = 0; i < order.size(); i++) mp[order[i]] = i + 1;
7

8
vector<pair<int, char>> p;
9
int x = 200;
10
for (int i = 0; i < s.size(); i++) {
11
if (mp[s[i]] != 0)
12
p.push_back(make_pair(mp[s[i]], s[i]));
13
else
14
p.push_back(make_pair(x--, s[i]));
15
}
16

17
sort(p.begin(), p.end());
18
string ans = "";
19
for (int i = 0; i < p.size(); i++) {
20
ans += p[i].second;
21
}
22
return ans;
23
}
24
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0