Scanner sc = new Scanner(System.in);
        int ppl = sc.nextInt(); //Nombre d'étudiants
        int ps = sc.nextInt(); //Note de passage
        
        
        Map<Integer, Stud> map = new LinkedHashMap<>(); //Avoir un numéro d'inscription scolaire et une classe de Stud
        for(int i = 1; i <= ppl; i++) {
            int a = sc.nextInt(); //Score du test
            int b = sc.nextInt(); //Nombre d'absences
            Stud s = new Stud(a, b); //Instanciation
            map.put(i, s); //Remplissez la carte avec votre numéro d'école et votre instance
        }
        
        for(int key : map.keySet()) {
            Stud c = map.get(key);
            int d = c.score; //Scores pour chaque numéro d'inscription scolaire
            int e = c.absent; //Nombre d'absences
            int f = d - e * 5; //Calculez le score final
            if(f <= 0) { //Si le score devient négatif à la suite du calcul, définissez 0 comme limite inférieure.
                f = 0;
            }
            
            if(f >= ps) {
                System.out.println(key);
            }
        }
    }
}
class Stud { //Classe étudiante
        int score; //But
        int absent; //Nombre d'absences
        
        public Stud(int score, int absent) {
            this.score = score;
            this.absent = absent;
        }
}
J'ai d'abord proposé la méthode en utilisant un tableau, mais cela semblait compliqué, alors j'ai essayé d'utiliser Map. Je voulais les récupérer dans l'ordre dans lequel ils étaient emballés, j'ai donc utilisé LinkedHashMap.
Recommended Posts