作者nh60211as (xXx_5354M3_31M0_xXx)
標題Re: [閒聊] 每日leetcode
時間2024-07-24 11:53:37
放假沒事也來寫寫看,真的好難
class Solution {
public:
vector<int> sortJumbled(vector<int>& mapping, vector<int>& nums) {
set<Jumble, JumbleCmp> jumbleList;
for (size_t i = 0; i < nums.size(); i++) {
jumbleList.insert(toJumble(nums[i], i, mapping));
}
vector<int> result;
result.reserve(nums.size());
for (const Jumble& jumble : jumbleList) {
result.push_back(jumble.original);
}
return result;
}
private:
struct Jumble {
int original;
int jumbled;
size_t order;
};
struct JumbleCmp {
bool operator()(const Jumble& lhs, const Jumble& rhs) const {
if (lhs.jumbled == rhs.jumbled) {
return lhs.order < rhs.order;
}
return lhs.jumbled < rhs.jumbled;
}
};
Jumble toJumble(int value, size_t order, const vector<int>& mapping) {
int original = value;
int result = 0;
int factor = 1;
do {
int currentValue = value % 10;
result += mapping[currentValue] * factor;
value /= 10;
factor *= 10;
} while (value != 0);
return {original, result, order};
}
};
--
https://i.imgur.com/07Uv9NC.png https://i.imgur.com/YNJpGoH.png
https://i.imgur.com/G69mH5A.png https://i.imgur.com/ptaX5iW.png
https://i.imgur.com/hEeZuph.png https://i.imgur.com/mGTKAFz.png
https://i.imgur.com/gdejDOy.png https://i.imgur.com/JX7AHZc.png
https://i.imgur.com/X6Pgqgi.png https://i.imgur.com/mJ8dU86.png
--
※ 發信站: 批踢踢實業坊(ptt-web.org.tw), 來自: 125.228.71.204 (臺灣)
※ 文章網址: https://ptt-web.org.tw/Marginalman/M.1721793222.A.894
→ sustainer123: 大師 07/24 11:54