題目要求: 給你一個整數陣列 salary ,陣列里每個數都是 唯一 的,其中 salary[i] 是第 i 個員工的工資, 請你回傳去掉最低工資和最高工資以后,剩下員工工資的平均值, 例子:
方法:模擬思路
我們可以按照題意來模擬:
找到一個最大值 maxValue\rm maxValuemaxValue;
找到一個最小值 minValue\rm minValueminValue;
然后對所有元素求和后減去這兩個值 sum=(∑isalary[i])?maxValue?minValue{\rm sum} = (\sum_{i} {\rm salary}[i]) - {\rm maxValue} - {\rm minValue}sum=(∑i?salary[i])?maxValue?minValue;
求平均值 sum/[salary.size()?2]{\rm sum} / [{\rm salary.size() - 2}]sum/[salary.size()?2],
因為這里保證了 salary\rm salarysalary 陣列的長度至少是 333,所以我們不用特殊考慮 maxValue\rm maxValuemaxValue 和 minValue\rm minValueminValue 是同一個的問題,因為如果它們相等的話(假設等于 xxx),這個序列里面所有元素都應該是 xxx,不影響計算結果, 代碼:
class Solution{
public:
double average(vector<int>& salary){
double maxValue=https://www.cnblogs.com/dayday-toy/p/ *max_element(salary.begin(),salary.end());
double minValue= *min_element(salary.begin(),salary.end());
double sum = accumulate(salary.begin(),salary.end(),- maxValue- minValue);
return sum/int(salary.size()-2);
}
};
執行結果:通過
作者:LeetCode-Solution鏈接:https://leetcode-cn.com/problems/average-salary-excluding-the-minimum-and-maximum-salary/solution/qu-diao-zui-di-gong-zi-he-zui-gao-gong-zi-hou-de-4/
來源:力扣(LeetCode)
著作權歸作者所有,商業轉載請聯系作者獲得授權,非商業轉載請注明出處, 來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/average-salary-excluding-the-minimum-and-maximum-salary
著作權歸領扣網路所有,商業轉載請聯系官方授權,非商業轉載請注明出處,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/163901.html
標籤:其他
上一篇:高級圖形繪制軟體的原理猜想
下一篇:Azure內容審查器之羞羞圖審查
