题目描述:
题解思路:
C++中pair的基本用法
class Solution {
public:
vector<string> findRelativeRanks(vector<int>& score) {
int n=score.size();
string dec[3]={"Gold Medal","Silver Medal","Bronze Medal"};
vector<pair<int,int>> arr;
for(int i=0;i<n;i++)
{
arr.emplace_back(make_pair(-score[i],i))//加-号是为了后面的arr
//排序,需要逆序排序,因为不需要对score[i]中的分数进行操作,所以将
//-score[i]存储进去也无妨;
}
sort(arr.begin(),arr.end());
vector<string> ans(n);
for(int i=0;i<n;i++)
{
if(i>=3)
{
ans[arr[i].second]=to_string(i+1);
}
else
{
ans[arr[i].second]=dec[i];
}
}
return ans;
}
};