LeetCode刷题(51)~去掉最低工资和最高工资后的工资平均值

举报
海轰Pro 发表于 2021/08/06 01:03:29 2021/08/06
【摘要】 题目描述 给你一个整数数组 salary ,数组里每个数都是 唯一 的,其中 salary[i] 是第 i 个员工的工资。 请你返回去掉最低工资和最高工资以后,剩下员工工资的平均值。 示例 1: 输入:salary = [4000,3000,1000,2000] 输出:2500.00000 解释:最低工资和最高工资分别是 1000 和 4000 。 去掉最低工资...

题目描述

给你一个整数数组 salary ,数组里每个数都是 唯一 的,其中 salary[i] 是第 i 个员工的工资。

请你返回去掉最低工资和最高工资以后,剩下员工工资的平均值。

示例 1:

输入:salary = [4000,3000,1000,2000]
输出:2500.00000
解释:最低工资和最高工资分别是 10004000 。
去掉最低工资和最高工资以后的平均工资是 (2000+3000)/2= 2500

  
 
  • 1
  • 2
  • 3
  • 4

示例 2:

输入:salary = [1000,2000,3000]
输出:2000.00000
解释:最低工资和最高工资分别是 10003000 。
去掉最低工资和最高工资以后的平均工资是 (2000)/1= 2000

  
 
  • 1
  • 2
  • 3
  • 4

示例 3:

输入:salary = [6000,5000,4000,3000,2000,1000]
输出:3500.00000

  
 
  • 1
  • 2

示例 4:

输入:salary = [8000,9000,2000,3000,6000,1000]
输出:4750.00000

  
 
  • 1
  • 2

提示:

  • 3 <= salary.length <= 100
  • 10^3 <= salary[i] <= 10^6 salary[i] 是唯一的。
  • 与真实值误差在 10^-5 以内的结果都将视为正确答案。

解答 By 海轰

提交代码

double average(vector<int>& salary) { sort(salary.begin(),salary.end()); double result=0; for(int i=1;i<salary.size()-1;++i) { result+=salary[i]; } return result/(salary.size()-2); }

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

运行结果
在这里插入图片描述

题目来源

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/average-salary-excluding-the-minimum-and-maximum-salary

文章来源: haihong.blog.csdn.net,作者:海轰Pro,版权归原作者所有,如需转载,请联系作者。

原文链接:haihong.blog.csdn.net/article/details/108022436

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。