leetcode 506. 相对名次(Java版)
生活随笔
收集整理的這篇文章主要介紹了
leetcode 506. 相对名次(Java版)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目
https://leetcode-cn.com/problems/relative-ranks/
題解
思路主要是,將運動員一開始的位置記錄下來,方便頒獎的時候去指定位置頒給指定的人。
代碼
import java.util.Arrays; import java.util.HashMap;public class Solution {public String[] findRelativeRanks(int[] score) {HashMap<Integer, Integer> map = new HashMap<>(); // k,v = (score,index)for (int i = 0; i < score.length; i++) {map.put(score[i], i);}Arrays.sort(score);reverse(score);String[] result = new String[score.length];for (int i = 0; i < result.length; i++) {if (i == 0) result[map.get(score[i])] = "Gold Medal";else if (i == 1) result[map.get(score[i])] = "Silver Medal";else if (i == 2) result[map.get(score[i])] = "Bronze Medal";else result[map.get(score[i])] = Integer.toString(i + 1);}return result;}public void reverse(int[] array) {for (int i = 0; i < array.length / 2; i++) {int t = array[i];array[i] = array[array.length - i - 1];array[array.length - i - 1] = t;}} }總結
以上是生活随笔為你收集整理的leetcode 506. 相对名次(Java版)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: leetcode 504. 七进制数(J
- 下一篇: leetcode 507. 完美数(Ja