博客
关于我
PAT——1032. 挖掘机技术哪家强
阅读量:464 次
发布时间:2019-03-06

本文共 1031 字,大约阅读时间需要 3 分钟。

为了比较各个学校在挖掘机技术方面的实力,PAT组织了一个挖掘机技能大赛。比赛结果由参赛者的表现和分数决定。我们的任务是根据比赛结果统计出技术最强的学校。

输入格式如下:第一行给出正整数N,表示参赛人数。接下来的N行,每行包含两个整数:第一个是参赛者的学校编号,第二个是比赛成绩(百分制)。

输出格式:一行,给出总分最高的学校编号和总分,中间用空格分隔。

解决这个问题的方法是,使用一个数组来记录每个学校的总得分。对于每个参赛者,将其成绩加到对应的学校总分中。最后,遍历数组,找出总分最高的学校及其得分。

具体步骤:

  • 读取参赛人数N。
  • 初始化一个足够大的数组,用于存储每个学校的总分。
  • 遍历每个参赛者,将其成绩加到对应的学校总分中。
  • 找出总分最高的学校及其总分。
  • 输出结果。
  • 代码实现:

    package com.hone.basical;import java.util.Scanner;public class BestSchool {    public static void main(String[] args) {        Scanner s = new Scanner(System.in);        int n = s.nextInt();        int[] scores = new int[100001]; // 足够大,避免溢出        for (int i = 0; i < n; i++) {            int schoolId = s.nextInt();            int score = s.nextInt();            scores[schoolId] += score;        }        int maxScore = -1;        int bestSchoolId = 0;        for (int i = 1; i <= n; i++) {            if (scores[i] > maxScore) {                maxScore = scores[i];                bestSchoolId = i;            }        }        System.out.println(bestSchoolId + " " + maxScore);    }}

    转载地址:http://bjnbz.baihongyu.com/

    你可能感兴趣的文章
    pandas 重新采样到每月的特定工作日
    查看>>
    pandas :如何删除以NaN为列名的多个列?
    查看>>
    pandas :我如何对堆叠的条形图进行分组?
    查看>>
    pandas :按移位分组和累加和(GroupBy Shift And Cumulative Sum)
    查看>>
    pandas :检测一个DF和另一个DF之间缺失的列
    查看>>
    Pandas-从具有嵌套列表列表的现有列创建动态列时出错
    查看>>
    Pandas-通过对列和索引的值求和来合并两个数据框
    查看>>
    pandas.columns、get_dummies等用法
    查看>>
    pandas.DataFrame.copy(deep=True) 实际上并不创建深拷贝
    查看>>
    pandas.read_csv()的详解-ChatGPT4o作答
    查看>>
    PANDAS.READ_EXCEL()输出‘;溢出错误:日期值超出范围‘;而不存在日期列
    查看>>
    pandas100个骚操作:再见 for 循环!速度提升315倍!
    查看>>
    Pandas:如何根据其他列值的条件对列进行求和?
    查看>>
    Pandas:对给定列求和 DataFrame 行
    查看>>
    Pandas、Matplotlib、Pyecharts数据分析实践
    查看>>
    Pandas中文官档 ~ 基础用法1
    查看>>
    Pandas中文官档~基础用法2
    查看>>
    Pandas中文官档~基础用法5
    查看>>
    Pandas中文官档~基础用法6
    查看>>
    Pandas中的GROUP BY AND SUM不丢失列
    查看>>