算成绩啦(洛谷P5740、P5741题题解)

P5740题目要求

P5740题目链接

在这里插入图片描述

P5740题意分析

这题比较水,简单的讲直接存一个max就完事。。。

P5740代码(Java语言描述)

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int num = Integer.parseInt(scanner.nextLine());
        String result = "";
        int max = -1;
        for (int i = 0; i < num; i++) {
            String info = scanner.nextLine();
            String[] arr = info.split(" ");
            int grade = Integer.parseInt(arr[1]) + Integer.parseInt(arr[2]) + Integer.parseInt(arr[3]);
            if (grade > max) {
                max = grade;
                result = info;
            }
        }
        scanner.close();
        System.out.println(result);
    }
}

P5741题目要求

P5741题目链接

在这里插入图片描述

P5741题意分析

不重复的两两比较——P5728

P5728题算是本题的简化版吧,本题算是有所变形,具体内容可以参考P5728。

P5741代码(Java语言描述)

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int num = Integer.parseInt(scanner.nextLine());
        String[] name_array = new String[num];
        int[] chinese_array = new int[num];
        int[] math_array = new int[num];
        int[] english_array = new int[num];
        int[] grade_array = new int[num];
        for (int i = 0; i < num; i++) {
            String[] info = scanner.nextLine().split(" ");
            name_array[i] = info[0];
            chinese_array[i] = Integer.parseInt(info[1]);
            math_array[i] = Integer.parseInt(info[2]);
            english_array[i] = Integer.parseInt(info[3]);
            grade_array[i] = chinese_array[i] + math_array[i] + english_array[i];
        }
        for (int i = 0; i < num; i++) {
            for (int j = i+1; j < num; j++) {
                if (Math.abs(chinese_array[i]-chinese_array[j]) <= 5 &&
                        Math.abs(math_array[i]-math_array[j]) <= 5 &&
                        Math.abs(english_array[i]-english_array[j]) <= 5 &&
                        Math.abs(grade_array[i]-grade_array[j]) <= 10) {
                    System.out.println(name_array[i] + " " + name_array[j]);
                }
            }
        }
        scanner.close();
    }
}

发布了351 篇原创文章 · 获赞 610 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/weixin_43896318/article/details/104057137