Ребята объясните, почему HashMap<String,Integer>, а не наоборот HashMap<Integer, String> ??? Ведь говорится же в условии: ключ - число, значение - строка... В чем же проблема??? Из-за этого не прошел валдиацию, хотя и вывод на экран был правильный! А вот и ключевая часть кода:
HashMap<Integer, String> map = new HashMap<>();

        while (true) {

            String id = reader.readLine();
            if (id.isEmpty())
                break;
            int index = Integer.parseInt(id);

            String name = reader.readLine();
            if(name.isEmpty())
                break;

            map.put(index, name);
        }

        for (Map.Entry<Integer, String> pair : map.entrySet()) {
            System.out.println(pair.getKey() + " " + pair.getValue());
        }