неділя, 1 листопада 2015 р.

4740

Перепис населення

У головному корпусі проживає N чоловік, вік кожного вар'юється від 0 до 1000 років. Якось враці викладачі вирішили вияснити, людей якого віку у головному корпусі більше всього. Зрозуміло, виконувати цю роботу доведеться вам.
Знайдіть, який вік зустрічається частіше усього та виведіть його.
Вхідні дані
У першому рядку число N - кількість мешканців головного корпусу (1 ≤ N≤ 105). У другому рядку N чисел - їх вік. Кожен вік - ціле число від 0до 1000.
Вихідні дані
Виведіть вік, який найчастіше зустрічається (якщо таких декілька, виведіть вік наймолодших).

import java.util.HashMap; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(), x; HashMap<Integer, Integer> t = new HashMap<Integer, Integer>(); while(n-- > 0) { x = in.nextInt(); t.put(x, t.containsKey(x) ? t.get(x) + 1 : 1); } int max = 0, mk = 1001; for(int k : t.keySet()) { if(t.get(k) > max || (t.get(k) == max && k < mk)) { mk = k; max = t.get(k); } } System.out.println(mk); } }

Немає коментарів:

Дописати коментар