506. 相对名次

给出 N 名运动员的成绩,找出他们的相对名次并授予前三名对应的奖牌。前三名运动员将会被分别授予 “金牌”,“银牌” 和“ 铜牌”(“Gold Medal”, “Silver Medal”, “Bronze Medal”)。

(注:分数越高的选手,排名越靠前。)

示例 1:

输入: [5, 4, 3, 2, 1]
输出: [“Gold Medal”, “Silver Medal”, “Bronze Medal”, “4”, “5”]
解释: 前三名运动员的成绩为前三高的,因此将会分别被授予 “金牌”,“银牌”和“铜牌” (“Gold Medal”, “Silver Medal” and “Bronze Medal”).
余下的两名运动员,我们只需要通过他们的成绩计算将其相对名次即可。
提示:

N 是一个正整数并且不会超过 10000。
所有运动员的成绩都不相同。

class Solution {public String[] findRelativeRanks(int[] nums) {int len = nums.length;String[] result = new String[len];if (len<1)return result;//1、可以把数组转换成键值对(下标:成绩)按成绩排序,最后取出对应名次//2、分数总量不大,不超过10000,可以用计数排序int min = 0;for (int num : nums) {min = num>min?num:min;}int[] map = new int[min+1];for (int num : nums) {map[num]++;}//把map中每个分数对应的人数,转换成对应名次int rank = 1;int temp = 0;for (int i = min; i >= 0; i--) {if (map[i]!=0){temp = map[i];map[i] = rank;rank += temp;}}//把名次映射成金银铜奖"Gold Medal", "Silver Medal", "Bronze Medal"String s = "";int value = 0;for (int i = 0; i < len; i++) {value= map[nums[i]];switch (value){case 1: s = "Gold Medal";break;case 2: s = "Silver Medal";break;case 3: s = "Bronze Medal";break;default: s = String.valueOf(value);}result[i] = s;}return result;}
}

Java实现 LeetCode 506 相对名次相关推荐

  1. leetcode 506. 相对名次(Java版)

    题目 https://leetcode-cn.com/problems/relative-ranks/ 题解 思路主要是,将运动员一开始的位置记录下来,方便颁奖的时候去指定位置颁给指定的人. 先用ma ...

  2. LeetCode 506. 相对名次(map)

    1. 题目 给出 N 名运动员的成绩,找出他们的相对名次并授予前三名对应的奖牌. 前三名运动员将会被分别授予 "金牌","银牌" 和" 铜牌" ...

  3. leetcode 506 相对名次

    https://leetcode-cn.com/problems/relative-ranks/ 题目 给你一个长度为nnn的整数数组scorescorescore,其中score[i]score[i ...

  4. 【快乐水题】506. 相对名次

    原题: 力扣链接:506. 相对名次 题目简述: 给你一个长度为 n 的整数数组 score ,其中 score[i] 是第 i 位运动员在比赛中的得分.所有得分都 互不相同 . 运动员将根据得分 决 ...

  5. [LeetCode]506. Relative Ranks

    [LeetCode]506. Relative Ranks 题目描述 思路 用map保存 计算res的时候直接逆序遍历map即可 代码 #include <iostream> #inclu ...

  6. java求最短距离,Java实现 LeetCode 821 字符的最短距离(暴力)

    821. 字符的最短距离 给定一个字符串 S 和一个字符 C.返回一个代表字符串 S 中每个字符到字符串 S 中的字符 C 的最短距离的数组. 示例 1: 输入: S = "loveleet ...

  7. 506. 相对名次-自定义快速排序

    506. 相对名次-自定义快速排序 给你一个长度为 n 的整数数组 score ,其中 score[i] 是第 i 位运动员在比赛中的得分.所有得分都 互不相同 . 运动员将根据得分 决定名次 ,其中 ...

  8. Leetcode怎么调试java代码,LeetCode–正则表达式匹配

    深入浅出node. js+node学习指南书 208.6元 (需用券) 去购买 > LeetCode–正则表达式匹配 博客说明文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总, ...

  9. Java描述 LeetCode,513. Find Bottom Left Tree Value 找左下角的值

    大家好,我是河海哥,专注于后端,如果可以的话,想做一名code designer而不是普通的coder,一起见证河海哥的成长,您的评论与赞是我的最大动力,如有错误还请不吝赐教,万分感谢.一起支持原创吧 ...

  10. Java for LeetCode 067 Add Binary

    Given two binary strings, return their sum (also a binary string). For example, a = "11" b ...

最新文章

  1. fopen时w与wb的区别
  2. 当微信小程序遇上TensorFlow:Server端实现补充
  3. 开发者工具 Top 100 名单
  4. 训练集 测试集 验证集_Python机器学习实战:划分训练集和检验集
  5. cf两边黑屏怎么解决win10_win10开机无限黑屏转圈重启解决方法
  6. Java编程——服务器设计方案之应用限流
  7. php源码编译常见错误解决方案
  8. Python isdigit() isalnum()
  9. Unity如何设置两个玩家
  10. php中type的格式,javascript – 在php中动态生成的输入[type = date]格式值
  11. 我已经不用 try catch 处理异常了!太辣鸡了!
  12. elixir元编程的quote与unquote
  13. vcard怎么转excel vcf转excel神器教程
  14. Ant Design Pro从零到一(Mock使用)
  15. 2.Java语言基础——流程控制语句与方法
  16. js/javaScript通过setTimeout做动画和需要注意的点
  17. uni-app 父传子、子传父、路径传参、本地存储
  18. SD-WAN网络加速,开通游戏快车道
  19. 解决CPU使用过高问题
  20. casio计算机隐藏游戏fx-82ES,CASIOlowbar;fx-82ES计算器隐藏功能

热门文章

  1. 图像JPEGEXIF格式介绍(一)
  2. python输入一个整数、输出该整数的所有素数因子_一个正整数的所有质数因子
  3. CPU、内存、主板、显卡等是什么?计算机基本的硬件介绍,计算机组成元件
  4. ios修改apn的插件_更改接入点,瞬间让你在4G网络下快到不行!效果立竿见影!...
  5. 台式电脑计算机怎么用,怎么用键盘开机电脑_台式电脑键盘怎么开机-win7之家
  6. 没有什么软文是营销圈拯救不了的?
  7. 一年级上册计算机教学计划,一年级上册教学计划
  8. C# Teechart Pareto图实现 折线显示百分比,多坐标轴显示等
  9. 双卡4G路由器_4G双卡双模路由器_4G双网双待路由器
  10. Unity3D 使用图片自定义字体,防止打包安卓后字体变形