Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.company;
- import java.util.*;
- import java.util.stream.Collectors;
- public class Main {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- LinkedHashMap<String, ArrayList<Double>> studentsGrades = new LinkedHashMap<>();
- int n = Integer.parseInt(scanner.nextLine());
- for (int i = 0; i < n; i++) {
- String name = scanner.nextLine();
- double grade = Double.parseDouble(scanner.nextLine());
- if (!studentsGrades.containsKey(name)) {
- studentsGrades.put(name, new ArrayList<>());
- studentsGrades.get(name).add(grade);
- } else {
- studentsGrades.get(name).add(grade);
- }
- }
- Map<String, Double> averageStudets = new LinkedHashMap<>();
- for (String name : studentsGrades.keySet()) {
- double sum = 0;
- for (int i = 0; i < studentsGrades.get(name).size(); i++) {
- sum += studentsGrades.get(name).get(i);
- }
- double average = sum / studentsGrades.get(name).size();
- if (average >= 4.50) {
- averageStudets.put(name, average);
- }
- }
- averageStudets.entrySet().stream().sorted(Map.Entry.<String, Double>comparingByValue().reversed())
- .forEach(entry ->
- System.out.println(String.format("%s -> %.2f", entry.getKey(), entry.getValue())));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement