public class Solution {
class Rank {
int pos;
int score;
Rank(int pos, int score) {
this.pos = pos;
this.score = score;
}
}
public String[] findRelativeRanks(int[] nums) {
List<Rank> r = new ArrayList<>();
for(int i = 0; i < nums.length;i++) {
r.add(new Rank(i,nums[i]));
}
Collections.sort(r, new Comparator<Rank>(){
public int compare(Rank r1,Rank r2) {
return r2.score-r1.score;
}
});
String[] rank = new String[nums.length];
for(int i = 0; i < nums.length;i++) {
if(i==0) {
rank[r.get(i).pos] = "Gold Medal";
}else if(i==1) {
rank[r.get(i).pos] = "Silver Medal";
}else if(i==2) {
rank[r.get(i).pos] = "Bronze Medal";
}else{
rank[r.get(i).pos] = String.valueOf(i+1);
}
}
return rank;
}
}