给你一个整数数组 arr
,请你删除最小 5%
的数字和最大 5%
的数字后,剩余数字的平均值。
与 标准答案 误差在 10-5
的结果都被视为正确结果。
class Solution {
public:
double trimMean(vector<int>& arr) {
sort(arr.begin(), arr.end());
size_t cnt = arr.size() * 0.05;
double sum = 0;
for (size_t i = cnt; i < arr.size() - cnt; ++i)
sum += arr[i];
return sum / (arr.size() - cnt * 2);
}
};