PTA——互评成绩
PTA——互評成績
學生互評作業的簡單規則是這樣定的:每個人的作業會被k個同學評審,得到k個成績。系統需要去掉一個最高分和一個最低分,將剩下的分數取平均,就得到這個學生的最后成績。本題就要求你編寫這個互評系統的算分模塊。
輸入格式:
輸入第一行給出3個正整數N(3 < N ≤1e?4,學生總數)、k(3 ≤ k ≤ 10,每份作業的評審數)、M(≤ 20,需要輸出的學生數)。隨后N行,每行給出一份作業得到的k個評審成績(在區間[0, 100]內),其間以空格分隔。
輸出格式:
按非遞減順序輸出最后得分最高的M個成績,保留小數點后3位。分數間有1個空格,行首尾不得有多余空格。
輸入樣例:
6 5 3
88 90 85 99 60
67 60 80 76 70
90 93 96 99 99
78 65 77 70 72
88 88 88 88 88
55 55 55 55 55
輸出樣例:
87.667 88.000 96.000
#include<cstdio> #include<cstring> #include<cstdlib> #include<iostream> #include<algorithm> using namespace std; const int maxn=10050; int n,k,m; double f[maxn]; double mx,mn,sum; int main() {cin>>n>>k>>m;for(int i=0;i<n;i++){mx=-1;mn=101;sum=0;for(int j=0;j<k;j++){double x;cin>>x;if(mx<x){mx=x;}if(mn>x){mn=x;}sum+=x;}sum=sum-mx-mn;f[i]=sum/(k-2);}sort(f,f+n);for(int i=n-m;i<n;i++){if(i!=n-1){printf("%.3lf ",f[i]);}else{printf("%.3lf\n",f[i]);}}return 0; }總結
- 上一篇: 添加VBA控件按钮及操作提示框
- 下一篇: mobel web 笔记