美团笔试题 淘汰分数

某比赛已经进入了淘汰赛阶段,已知共有n名选手参与了此阶段比赛,他们的得分分别是a_1,a_2….a_n,小美作为比赛的裁判希望设定一个分数线m,使得所有分数大于m的选手晋级,其他人淘汰。
但是为了保护粉丝脆弱的心脏,小美希望晋级和淘汰的人数均在[x,y]之间。
显然这个m有可能是不存在的,也有可能存在多个m,如果不存在,请你输出-1,如果存在多个,请你输出符合条件的最低的分数线。

输入描述:
输入第一行仅包含三个正整数n,x,y,分别表示参赛的人数和晋级淘汰人数区间。(1<=n<=50000,1<=x,y<=n)
输入第二行包含n个整数,中间用空格隔开,表示从1号选手到n号选手的成绩。(1<=|a_i|<=1000)

输出描述:
输出仅包含一个整数,如果不存在这样的m,则输出-1,否则输出符合条件的最小的值。

输入例子1:
6 2 3
1 2 3 4 5 6

输出例子1:
3

解:

先做特殊条件判断 x2>n 和 y2<n肯定不符合

把数组排序
然后把每个分数线该要淘汰的人数存入一个新数组中
最后遍历新数组 找到最小并且符合条件的返回
若找不到 返回-1

    public static int outScore(int n, int x, int y, int[] scores) {if (x * 2 > n || y * 2 < n) return -1;Arrays.sort(scores);int pre = -1;int preidx = -1;int[][] map = new int[2][scores.length];for (int i = scores.length - 1; i >= 0; i--) {if (scores[i] != pre) {pre = scores[i];preidx = i;map[0][i] = scores[i];map[1][i] = i + 1;} else {map[0][preidx] = scores[preidx];map[1][preidx] = preidx + 1;}}for (int i = x-1; i < scores.length; i++) {int out = map[1][i];int up = scores.length - map[1][i];if (out >= x && out <= y && up >= x && up <= y) {return map[0][i];}}return -1;}

美团笔试题 淘汰分数相关推荐

  1. 美团笔试题——淘汰分数

    题目描述 某比赛已经进入了淘汰赛阶段,已知共有n名选手参与了此阶段比赛,他们的得分分别是a_1,a_2-.a_n,小美作为比赛的裁判希望设定一个分数线m,使得所有分数大于m的选手晋级,其他人淘汰. 但 ...

  2. 2018 java 美团笔试题

    想进美团的同学注意了,这里是修真院面试笔记整理,那么这里就给大家分享一下 [2018 java 美团笔试题] 技术一面 1.我们先聊聊java基础知识吧,说出Object类的常用方法? 2.刚刚说到o ...

  3. 美团笔试题2021.8.29(第四题求大佬解答)

    美团笔试题2021.8.29 又再帮同学写,推了这周的周赛,侥幸都有点思路 丁香树 题目描述 思路 因为芳香值最大为30,所以用一个数组存储已走过的芳香值,然后走到第i个点,找比当前芳香值小的有多少个 ...

  4. 美团笔试题之查找幸运星

    美团笔试题之查找幸运星 题目其实很简单,特别简单,当时看一眼题目我心中就有思路了,问题就是我卡在了如何循环输入上了,简直是不可思议, 当时我想复杂了,现在看来如此简单的问题我卡了这么久,实在是不应该啊 ...

  5. 美团笔试题 小美的跳方格

    看到一道美团(不知道什么时候)的笔试题,问题描述如下: 在网上查到过其他网友的解法,感觉和我的理解不太一样, 这里写一下我自己对题目的理解. 我比较疑惑的是小美跳方格的方式,是每次移动一格,还是可跳到 ...

  6. 美团笔试题:股票交易日

    在股市的交易日中,假设最多可进行两次买卖(即买和卖的次数均小于等于2),规则是必须一笔成交后进行另一笔(即买-卖-买-卖的顺序进行).给出一天中的股票变化序列,请写一个程序计算一天可以获得的最大收益. ...

  7. Java后端之美团笔试题

    更新的时间:2022-5-7笔试 今天下午考的笔试,好难,我把题目贴这里,会做的大佬贴一下思路吧!!! 题目一: 小团饲养了一小缸鱼,并且买了A.B.C三类饲料来喂养它们,小团的饲养计划如下: -- ...

  8. 美团笔试题——公司食堂

    题目描述 小美和小团所在公司的食堂有N张餐桌,从左到右摆成一排,每张餐桌有2张餐椅供至多2人用餐,公司职员排队进入食堂用餐.小美发现职员用餐的一个规律并告诉小团:当男职员进入食堂时,他会优先选择已经坐 ...

  9. 美团笔试题——正则序列

    题目描述 我们称一个长度为n的序列为正则序列,当且仅当该序列是一个由1~n组成的排列,即该序列由n个正整数组成,取值在[1,n]范围,且不存在重复的数,同时正则序列不要求排序 有一天小团得到了一个长度 ...

最新文章

  1. Angular 文件上传与下载
  2. mysql数据库优化的几种方法
  3. 大话“用户注册激活,忘记密码”发送邮件功能
  4. leetcode 160. 相交链表(双指针)
  5. javascript Array类型 方法大全
  6. 【kafka】kafka docker jmx 远程连接 跨容器
  7. 神秘TTY:The TTY demystified
  8. iOS开发 - ARC的开启与关闭
  9. mysql时间减去秒_mysql加减时间-函数-时间加减
  10. 手机sim卡插到电脑上网_怎么用手机卡在电脑上上网
  11. Java生成随机数的几种方式
  12. pr转场 18种不同风格图形元素小故障视频过渡pr视频转场模板
  13. 51单片机 Keil C 延时程序的简单(晶振12MHz,一个机器周期1us.)
  14. js通过base64编码显示图片
  15. 使用虚拟机搭建Centos7
  16. C语言中的sprintf()函数使用出错原因
  17. 谷歌AI论文BERT双向编码器表征模型:机器阅读理解NLP基准11种最优(公号回复“谷歌BERT论文”下载彩标PDF论文)
  18. 计算机cpu为什么有版本之分,CPU怎么看性能好坏 最新CPU天梯图2016年9月-11月版本(台式机)...
  19. stty 命令中文使用详解
  20. 100个python算法超详细讲解:最佳存款方案

热门文章

  1. L3-015 球队“食物链” (30 分)
  2. document.referrer和history.go(-1)退回上一页区别
  3. 使用JS-SDK自定义微信分享效果
  4. 【JSON数据】中国各省份省会城市经纬度 JSON
  5. 简单的HANGMAN游戏
  6. 微软面试题之数字谜题 (转)
  7. linux proftpd 用户,linux之proftpd搭建(随时盖楼)
  8. python编程趣味试题_python趣味编程100例 python编程100例
  9. 2018 Arab Collegiate Programming Contest (ACPC 2018) L.Looking for Taste(按位或)
  10. 快充+大电池商务手机盘点 魅族华为领衔