1 条题解

  • 0
    @ 2023-6-11 12:17:12

    C++ :

    #include <bits/stdc++.h>
    using namespace std;
    
    int a[10000],n,i,j,x,s = 0;
    int main(){
    	cin>>n>>x;
    	for(i = 0;i < n;i++){
    		cin>>a[i];
    	}
    	
    	sort(a,a+n);
    	
    	for(i = x;i < n - x;i++){
    		s = s + a[i];
    	}
    	double v = s * 1.0 / (n - x * 2);
    	cout<<fixed<<setprecision(1)<<v<<endl; 
    }
    

    Python :

    s = input().split()
    # 学生总数
    n = int(s[0])
    # 取掉的个数x
    x = int(s[1])
    a = input().split()
    b = []
    su = 0
    # 列表类型转换
    for v in a:
        b.append(int(v))
    # 从小到大排序
    b.sort()
    del b[0:x]
    del b[-1 * x:]
    for v in b:
        su += v
    av = su / len(b)
    print('%.1f' % av)
    
    • 1

    【入门】去掉x个最高最低分后的平均分

    信息

    ID
    2393
    时间
    1000ms
    内存
    64MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者