27.数的比较

描述:

思想:
分别计算出中位数和平均数的大小,然后进行比较,这里为了避免小数带来的影响,统一对数据进行乘以n的操作。

代码:

#include <any>
#include <bits/stdc++.h>
using namespace std;

int main() {
    // 中位数:排序后位于中间的数
    // 平均数:全部数的和除以数的个数

    int n;
    cin >> n;
    vector<int> dates(n);
    long long sum = 0;
    for(int i = 0;i<n;i++){
        cin >> dates[i];
        sum += dates[i];
    }

    long long average = sum;

    sort(dates.begin(),dates.end());
    long long median = dates[n/2]*n;
    if(median > average) swap(median,average);
    int count = 0;
    for(int i = 0;i<n;i++){
        if(dates[i]*n >= median && dates[i]*n <= average){
            count++;
        }
    }
    cout << count << endl;
    return 0;
}
posted @ 2024-09-07 18:02  alone_qing  阅读(19)  评论(0)    收藏  举报