Rrui的Leetcode刷題筆記(八)
阿新 • • 發佈:2018-12-21
448. 找到所有陣列中消失的數字
class Solution { public: vector<int> findDisappearedNumbers(vector<int>& nums) { vector<int> res; for (int i = 0; i < nums.size(); ++i) { int idx = abs(nums[i]) - 1; nums[idx] = (nums[idx] > 0) ? -nums[idx] : nums[idx]; } for (int i = 0; i < nums.size(); ++i) { if (nums[i] > 0) { res.push_back(i + 1); } } return res; } };
506. 相對名次
class Solution { public: vector<string> findRelativeRanks(vector<int>& nums) { vector<int> a=nums; vector<string> b(nums.size(),"0"),d{"Gold Medal", "Silver Medal", "Bronze Medal"}; int k=1; sort(a.begin(),a.end()); map<int,int> c; for(int i=0;i<nums.size();i++) c[nums[i]]=i; for(int i=nums.size()-1;i>=0;i--) { if(k<4) { b[c.find(a[i])->second]=d[nums.size()-i-1]; } else b[c.find(a[i])->second]=to_string(k); k++; } return b; } };