1 条题解

  • 0
    @ 2026-1-29 18:59:07
    #include<bits/stdc++.h>
    using namespace std;
    
    // [1] 存储n个桃子的重量(数组大小满足n≤1000的题目要求)
    int arr[1010];
    
    int main() {
        int n;
        cin >> n; // [2] 输入桃子的总个数n
        // [3] 循环读取n个桃子的重量
        for(int i = 0; i < n; i++) {
            cin >> arr[i];
        }
    
        // [4] 计算所有桃子的总重量
        int total = 0;
        for(int i = 0; i < n; i++) {
            total += arr[i];
        }
    
        // [5] 找到最轻和最重的桃子重量
        int min_val = arr[0], max_val = arr[0];
        for(int i = 0; i < n; i++) {
            if(arr[i] < min_val) min_val = arr[i];
            if(arr[i] > max_val) max_val = arr[i];
        }
    
        // [6] 统计最轻和最重桃子的数量
        int count_min = 0, count_max = 0;
        for(int i = 0; i < n; i++) {
            if(arr[i] == min_val) count_min++;
            if(arr[i] == max_val) count_max++;
        }
    
        // [7] 计算需要留下的桃子总重量
        int leave = min_val * count_min + max_val * count_max;
        // [8] 计算带走的桃子总重量和数量
        int take = total - leave;
        int take_num = n - count_min - count_max;
    
        // [9] 计算平均重量(保留一位小数)
        double avg = take * 1.0 / take_num;
    
        // [10] 输出结果
        cout << take << endl;
        printf("%.1f\n", avg);
    
        return 0;
    }
    
    • 1

    信息

    ID
    1181
    时间
    1000ms
    内存
    256MiB
    难度
    1
    标签
    递交数
    1
    已通过
    1
    上传者