zoukankan      html  css  js  c++  java
  • LeetCode_506. Relative Ranks

    506. Relative Ranks

    Easy

    Given scores of N athletes, find their relative ranks and the people with the top three highest scores, who will be awarded medals: "Gold Medal", "Silver Medal" and "Bronze Medal".

    Example 1:

    Input: [5, 4, 3, 2, 1]
    Output: ["Gold Medal", "Silver Medal", "Bronze Medal", "4", "5"]
    Explanation: The first three athletes got the top three highest scores, so they got "Gold Medal", "Silver Medal" and "Bronze Medal". 
    For the left two athletes, you just need to output their relative ranks according to their scores.

    Note:

    1. N is a positive integer and won't exceed 10,000.
    2. All the scores of athletes are guaranteed to be unique.
    package leetcode.easy;
    
    public class RelativeRanks {
    	private static void print_arr(String[] strs) {
    		for (String str : strs) {
    			System.out.print(str + " ");
    		}
    		System.out.println();
    	}
    
    	public String[] findRelativeRanks(int[] nums) {
    		java.util.HashMap<Integer, Integer> map = new java.util.HashMap<Integer, Integer>();
    		for (int i = 0; i < nums.length; i++) {
    			map.put(nums[i], i);
    		}
    		String[] res = new String[nums.length];
    		java.util.Arrays.sort(nums);
    		int count = 1;
    		for (int i = nums.length - 1; i >= 0; i--) {
    			int index = map.get(nums[i]);
    			if (count == 1) {
    				res[index] = "Gold Medal";
    			} else if (count == 2) {
    				res[index] = "Silver Medal";
    			} else if (count == 3) {
    				res[index] = "Bronze Medal";
    			} else {
    				res[index] = String.valueOf(count);
    			}
    			count++;
    		}
    		return res;
    	}
    
    	@org.junit.Test
    	public void test() {
    		int[] nums = { 5, 4, 3, 2, 1 };
    		print_arr(findRelativeRanks(nums));
    	}
    }
    
  • 相关阅读:
    HDOJ 2095 find your present (2)
    HDOJ 2186 悼念512汶川大地震遇难同胞——一定要记住我爱你
    九度 1337 寻找最长合法括号序列
    九度 1357 疯狂地Jobdu序列
    HDOJ 1280 前m大的数
    九度 1343 城际公路网
    九度 1347 孤岛连通工程
    HDOJ 2151 Worm
    九度 1342 寻找最长合法括号序列II
    九度 1346 会员积分排序
  • 原文地址:https://www.cnblogs.com/denggelin/p/12133302.html
Copyright © 2011-2022 走看看