精華區beta Marginalman 關於我們 聯絡資訊
1491. Average Salary Excluding the Minimum and Maximum Salary 給你一個陣列 salary 其中的元素不重複,salary [i] 表示第 i 個員工的薪水,求出除 了最多和最少薪水的員工的平均薪水。 Example: Input: salary = [4000,3000,1000,2000] Output: 2500.00000 Explanation: Minimum salary and maximum salary are 1000 and 4000 respectively. Average salary excluding minimum and maximum salary is (2000+3000) / 2 = 2500 Input: salary = [1000,2000,3000] Output: 2000.00000 Explanation: Minimum salary and maximum salary are 1000 and 3000 respectively. Average salary excluding minimum and maximum salary is (2000) / 1 = 2000 思路: 1.遍歷全部薪水並記錄薪水最多和最少是多少,並把全部薪水加總。 2.把加總後的薪水減去最多和最少除以 n-2 就是平均。 Java Code: ------------------------------------------------------------- class Solution { public double average(int[] salary) { int max = salary[0]; int min = salary[0]; int n = salary.length; double sum = 0; for (int i = 0; i < n; i++) { max = Math.max(max, salary[i]); min = Math.min(min, salary[i]); sum += salary[i]; } return (sum - max - min)/(n - 2); } } ------------------------------------------------------------- -- https://i.imgur.com/uiFto42.jpg -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.100.75.86 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1682947502.A.DAF.html
NTHUlagka: 大師 是說為啥大師假日的都沒po阿 05/02 17:46
Rushia: 大概率是hard解不出來只能看答案 05/02 19:11