Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >HDOJ 2023 求平均成绩

HDOJ 2023 求平均成绩

作者头像
谙忆
发布于 2021-01-20 08:03:01
发布于 2021-01-20 08:03:01
48601
代码可运行
举报
文章被收录于专栏:程序编程之旅程序编程之旅
运行总次数:1
代码可运行

Problem Description 假设一个班有n(n<=50)个学生,每人考m(m<=5)门课,求每个学生的平均成绩和每门课的平均成绩,并输出各科成绩均大于等于平均成绩的学生数量。

Input 输入数据有多个测试实例,每个测试实例的第一行包括两个整数n和m,分别表示学生数和课程数。然后是n行数据,每行包括m个整数(即:考试分数)。

Output 对于每个测试实例,输出3行数据,第一行包含n个数据,表示n个学生的平均成绩,结果保留两位小数;第二行包含m个数据,表示m门课的平均成绩,结果保留两位小数;第三行是一个整数,表示该班级中各科成绩均大于等于平均成绩的学生数量。 每个测试实例后面跟一个空行。

Sample Input 2 2 5 10 10 20

Sample Output 7.50 15.00 7.50 15.00 1

在此,我利用的方法是,如果是n*m的大小,我就开(n+1)*(m+1) 大小的空间,最后一行的数据用来存放当前一行的数据和,最后一列的数据用来 存放当前一列的数据之和。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import java.util.Scanner;
class Main{
    public static void main(String args[]){
        Scanner sc =new  Scanner(System.in);
        while(sc.hasNext()){
            int n =sc.nextInt();
            int m =sc.nextInt();
            int stuStr[][] = new int[n+1][m+1];
            for(int i=0;i<n;i++){
                for(int j=0;j<m;j++){
                    stuStr[i][j] = sc.nextInt();
                    stuStr[i][m] = stuStr[i][j]+stuStr[i][m];//一门课的n个学生的平均成绩
                    stuStr[n][j] = stuStr[i][j]+stuStr[n][j];//一个学生m门课的平均成绩
                }                
            }
            double nStr[] = new double[n];
            double mStr[] = new double[m];

            nStr[0] =(double)stuStr[0][m]/m;
            System.out.printf("%.2f",nStr[0]);
            for(int i=1;i<n;i++){
                nStr[i] = (double)stuStr[i][m]/m;
                System.out.printf(" %.2f",nStr[i]);
            }
            System.out.println();

            mStr[0]=(double)stuStr[n][0]/n;
            System.out.printf("%.2f",mStr[0]);
            for(int i=1;i<m;i++){
                mStr[i] = (double)stuStr[n][i]/n;
                System.out.printf(" %.2f",mStr[i]);
            }
            System.out.println();

            int sum=0;
            for(int i=0;i<n;i++){
                int sum_s = 0;
                for(int j=0;j<m;j++){
                    if(mStr[j]<=stuStr[i][j]){
                      sum_s++;
                    }
                }
                if(sum_s==m){
                     sum++;
                    }
            }
            System.out.println(sum);
            System.out.println();

        }
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015/12/10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
HDOJ 1202 The calculation of GPA
Problem Description 每学期的期末,大家都会忙于计算自己的平均成绩,这个成绩对于评奖学金是直接有关的。国外大学都是计算GPA(grade point average) 又称GPR(grade point ratio),即成绩点数与学分的加权平均值来代表一个学生的成绩的。那么如何来计算GPA呢?
谙忆
2021/01/21
2990
蓝桥杯 ——省赛题(java 组)
1.成绩分析 成绩分析成绩分析 题目: 小蓝给学生们组织了一场考试,卷面总分为 100 分,每个学生的得分都是一个 0 到 100 的整数。 请计算这次考试的最高分、最低分和平均分。 代码附上:  方法1: import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); /
王同学要努力
2022/12/21
3650
蓝桥杯 ——省赛题(java 组)
试题 算法提高 统计平均成绩
  有4个学生,上4门课,要求输入全部学生的各门课成绩,并分别求出每门课的平均成绩。(保留2位小数)   括号里是解释内容,不用输入输出。输入的所有数都为0到100之间(包括端点)的整数
SingYi
2022/07/13
2660
HDOJ(HDU) 2519 新生晚会(组合公式)
Problem Description 开学了,杭电又迎来了好多新生。ACMer想为新生准备一个节目。来报名要表演节目的人很多,多达N个,但是只需要从这N个人中选M个就够了,一共有多少种选择方法?
谙忆
2021/01/21
3050
HDOJ 2048 神、上帝以及老天爷
Problem Description HDU 2006’10 ACM contest的颁奖晚会隆重开始了! 为了活跃气氛,组织者举行了一个别开生面、奖品丰厚的抽奖活动,这个活动的具体要求是这样的:
谙忆
2021/01/20
2890
Java基础综合测试
输入包含多组测试用例。 每组测试数据首先是一个正整数N,表示本组数据有N个整数。 请处理到文件结束。
xbhog
2021/02/04
9760
Java基础综合测试
HDOJ 2014 青年歌手大奖赛_评委会打分
Problem Description 青年歌手大奖赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分。
谙忆
2021/01/20
3510
杭电OJ2020-2029
输入 n (n<=100) 个整数,按照绝对值从大到小排序后输出。题目保证对于每一个测试实例,所有的数的绝对值都不相等。
EmoryHuang
2022/08/24
5090
Java入门 - 详细的 Java 语法编程练习
转载请注明出处:JAVA入门_Mercury_Lc的博客-CSDN博客 (SDUT专题练习) 详细的 Java 语法编程练习 A-  A+B Problem(SDUT 1000) import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a, b; a = sc.nextInt
Lokinli
2023/03/09
3580
HDOJ 1236 排名(练耐心题)
Problem Description 今天的上机考试虽然有实时的Ranklist,但上面的排名只是根据完成的题数排序,没有考虑 每题的分值,所以并不是最后的排名。给定录取分数线,请你写程序找出最后通过分数线的 考生,并将他们的成绩按降序打印。
谙忆
2021/01/21
2040
HDOJ(HDU) 2061 Treasure the new start, freshmen!(水题、)
Problem Description background: A new semester comes , and the HDU also meets its 50th birthday. No matter what’s your major, the only thing I want to tell you is:”Treasure the college life and seize the time.” Most people thought that the college life
谙忆
2021/01/21
5740
HDOJ 2071 Max Num
Problem Description There are some students in a class, Can you help teacher find the highest student .
谙忆
2021/01/20
5790
HDOJ 2071 Max Num
HDOJ 2009 求数列的和
Problem Description 数列的定义如下: 数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。
谙忆
2021/01/19
5110
Java基础语法n
BK      分段函数(SDUT 2257) import java.util.*; public class Main{ public static void main(String[] args) { Scanner sc = new Scanner(System.in); double n; int t; while(sc.hasNext()) { t=sc.next
Lokinli
2023/03/09
3840
HDOJ 2011 多项式求和
Problem Description 多项式的描述如下: 1 - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 + … 现在请你求出该多项式的前n项的和。
谙忆
2021/01/20
3700
java-第3章 流程控制语句
2. 输出所有的水仙花数。所谓水仙花数是指一个三位整数,其各位数字的立方和等于其自身,例如:153=13+53+33。要求在一行输出结果。
北山啦
2022/11/27
2750
java-第3章 流程控制语句
HDOJ(HDU) 2148 Score(比较、)
Problem Description 转眼又到了一年的年末,Lele又一次迎来了期末考试。虽然说每年都要考试,不过今年的这场考试对Lele来说却意义重大。
谙忆
2021/01/21
2570
HDOJ(HDU) 2156 分数矩阵(嗯、求和)
Problem Description 我们定义如下矩阵: 1/1 1/2 1/3 1/2 1/1 1/2 1/3 1/2 1/1 矩阵对角线上的元素始终是1/1,对角线两边分数的分母逐个递增。 请求出这个矩阵的总和。
谙忆
2021/01/21
2930
HDOJ(HDU) 1785 You Are All Excellent(角度运算)
Problem Description 本次集训队共有30多人参加,毫无疑问,你们都是很优秀的,但是由于参赛名额有限,只能选拔部分队员参加省赛。从学校的角度,总是希望选拔出最优秀的18人组成6支队伍来代表学校。但是,大家也知道,要想做到完全客观,是一件很难的事情。因为选拔的标准本身就很难统一。 为了解决这个难题,我现在把问题作了简化,现在假设每个队员都是二维平面中的一个点,用(xi,yi)坐标来表示,一个队员的能力可以用他到原点的欧几里德距离来表示。由于这种排名标准太~客观了,新队员很难有出头的机会,很多人很是郁闷。特别是一个废话不是很多、不是特别暴躁、号称盖帽高手的伪**就很有意见,他现在要求改革排名规则,并且自己提出了一套号称绝对公正的方案: 现在不是用一个点来表示一个队员了,而是用原点到该队员所在的点所构成的向量来表示一个队员。如果该向量和X正轴夹角比较小的话,就说他的能力比较高,排名就应该靠前。 这就是著名的“伪氏规则”(说实话,这规则我有点怀疑其客观性,因为我知道他的坐标是(3.1,0.1)…)
谙忆
2021/01/21
2390
JAVA 实现简单的学生成绩管理系统
3. Eclipse或NetBeans IDE或EditPlus或其它开发工具
全栈程序员站长
2022/09/14
1.8K0
相关推荐
HDOJ 1202 The calculation of GPA
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验