코딩 테스트/LeetCode
1491. Average Salary Excluding the Minimum and Maximum Salary (최저 및 최대 급여를 제외한 평균 급여)
포카리tea
2024. 9. 30. 09:34
고유한 정수 salary 배열이 주어지는데, 여기서 salary[i]는 i^th 직원의 급여입니다.
최소 및 최대 급여를 제외한 직원의 평균 급여를 반환합니다. 실제 답변의 10^-5 이내의 답변은 수락됩니다.
예시 1:
입력: salary = [4000,3000,1000,2000]
출력: 2500.00000
설명: 최소 급여와 최대 급여는 각각 1000달러와 4000달러입니다.
최저 및 최대 급여를 제외한 평균 급여는 (2000+3000) / 2 = 2500입니다
예시 2:
입력: salary = [1000,2000,3000]
출력: 2000.00000
설명: 최소 급여와 최대 급여는 각각 1000달러와 3000달러입니다.
최저 및 최대 급여를 제외한 평균 급여는 (2000) / 1 = 2000입니다
조건:
- 3 <= salary.length <= 100
- 1000 <= salary [i] <= 106
- salary의 모든 정수는 고유합니다.
정답:
public class Solution {
public double Average(int[] salary) {
double result = 0;
int[] newArray = salary.Where(num => num != salary.Max() && num != salary.Min()).ToArray();
foreach (var value in newArray)
{
result += value;
}
result /= newArray.Length;
return result;
}
}
해설: Where을 이용하여 해당 배열의 최소값과 최대값을 제외하고 배열을 재생성한 후 평균값을 내어 해당 값을 return해줍니다.