Untitled
unknown
plain_text
a year ago
911 B
6
Indexable
class Solution { public: vector<int> sortJumbled(vector<int>& mapping, vector<int>& nums) { vector<int> ans; vector<pair<int, int>> newNumArr; for (int i=0; i<nums.size(); ++i) { int times = 1; int newNum = 0; int num = nums[i]; if (!num) newNum = mapping[num]; while (num) { int digit = num % 10; int newDigit = mapping[digit]; newNum += times * newDigit; times *= 10; num /= 10; } newNumArr.emplace_back(pair{newNum, i}); } auto cmp = [](const pair<int, int> &lhs, const pair<int, int> &rhs){ return lhs.first < rhs.first; }; sort(newNumArr.begin(), newNumArr.end(), cmp); for (auto &n : newNumArr) { ans.emplace_back(nums[n.second]); } return ans; } };
Editor is loading...
Leave a Comment