当前位置: 首页 > news >正文

L2-015 互评成绩

学生互评作业的简单规则是这样定的:每个人的作业会被k个同学评审,得到k个成绩。系统需要去掉一个最高分和一个最低分,将剩下的分数取平均,就得到这个学生的最后成绩。本题就要求你编写这个互评系统的算分模块。

输入格式:

输入第一行给出3个正整数N(3 < N ≤104,学生总数)、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

代码长度限制

16 KB

时间限制

300 ms

内存限制

64 MB

#include<iostream>
#include<queue>
#include<algorithm>
#include<iomanip>using namespace std;
inline int min(int a, int b){return a<b?a:b;}
struct Record{double average;int score[10];
};//重写优先队列的小于号
bool operator<(const Record& p1, const Record& p2){if(p1.average-p2.average<=1e-6) //当两个浮点数相差小于1e-6则认为两个浮点数相等return true;elsereturn false;
}//创建优先队列
priority_queue<Record> st;
//创建数组
vector<double> ls;
int N, k, M; //N为学生总数,k为每份作业的评审数,M为需要输出的学生数
int main(int argc, char* argv[]){cin >> N >> k >> M;Record tmp;for(int i = 0; i < N; i++){tmp.average = 0.0; //重置平均分for(int j = 0; j < k; j++){cin >> tmp.score[j]; //输入成绩}sort(tmp.score,tmp.score+k);//对Record的score进行排序for(int s = 1; s < k-1; s++){ //去掉最高分和最低分tmp.average+=tmp.score[s];}tmp.average /= (k-2); //算平均值st.push(tmp); //将当前Record放入优先队列}//得到得分最高的三个学生for(int j = 0; j < M; j++){tmp = st.top();st.pop();ls.push_back(tmp.average);}cout << fixed << setprecision(3) << ls[M-1];for(int x = M-2; x >= 0; x--){cout << " " << fixed << setprecision(3) << ls[x];}return 0;
}

 

http://www.lryc.cn/news/224950.html

相关文章:

  • 【Docker安装RockeMQ:基于Windows宿主机,并重点解决docker rocketMQ安装情况下控制台无法访问的问题】
  • Android Studio——android项目运行main()函数
  • 移动医疗科技:开发互联网医院系统源码
  • 代码审计, 介绍, 思路总结
  • 2023NOIP A层联测27 总结
  • 2022最新版-李宏毅机器学习深度学习课程-P34 自注意力机制类别总结
  • css sprite 的优缺点,使用方法和示例
  • 通过Cookie和Session来实现网站中登录账号的功能
  • QWidget 实现九宫格图案解锁
  • 设计模式-适配器模式(Adapter)
  • react:创建项目
  • RabbitMQ集群
  • Qt QtCreator调试Qt源码配置
  • JavaScript如何实现钟表效果,时分秒针指向当前时间,并显示当前年月日,及2024春节倒计时,源码奉上
  • 重生奇迹MU套装大全中的极品属性
  • 用Python解决猴子分桃问题
  • YOLOv8-Seg改进:分割注意力系列篇 | 新型的多尺度卷积注意力(MSCA)模块
  • 基于springboot实现致远汽车租赁平台管理系统项目【项目源码+论文说明】计算机毕业设计
  • 真的设计师做图只需要一个炫云客户端就够了
  • 简述 HTTP 请求的过程是什么?
  • 免root修改手机imei的技术原理是什么?如何实现的?hook吗
  • 【Redis】整合使用,进行注解式开发及应用场景和击穿、穿透、雪崩的讲解
  • 数据分析-numpy
  • 【Java】云HIS云端数字医院信息平台源码
  • Jupyter Notebook 内核似乎挂掉了,它很快将自动重启
  • Flink -- 事件时间 Watermark
  • Django框架简介
  • 把wpf的窗体保存为png图片
  • 2023NOIP A层联测28-大眼鸹猫
  • 电机应用-直流有刷电机