#include <algorithm>
#include <unordered_map>
class Solution {
public:
vector<string> findRelativeRanks(vector<int>& score) {
std::vector<int> v = score;
std::sort(v.begin(), v.end(), std::greater<int>());
std::unordered_map<int, std::string> lookup;
for (int i = 0; i < v.size(); i++) {
if (i == 0) {
lookup[v[i]] = "Gold Medal";
continue;
}
if (i == 1) {
lookup[v[i]] = "Silver Medal";
continue;
}
if (i == 2) {
lookup[v[i]] = "Bronze Medal";
continue;
}
lookup[v[i]] = std::to_string(i + 1);
}
std::vector<std::string> res;
for (int i = 0; i < score.size(); i++) {
res.push_back(lookup[score[i]]);
}
return res;
}
};