Не выполняется 4-ый пункт хоть ты тресни.
Я вам больше скажу, в одной из попыток я обноглел и в тупую перёс почти весь код из нити из правильного ответа к себе. Но даже так валидатор не принимает 4-ый пункт хоть убей. Может ему денег дать? ._.
package com.javarush.task.task18.task1823;
import java.io.*;
import java.util.*;
/*
Нити и байты
*/
public class Solution {
public static Map<String, Integer> resultMap = new HashMap<String, Integer>();
public static void main(String[] args) throws IOException {
try (BufferedReader reader = new BufferedReader(new InputStreamReader(System.in))) {
while (true) {
String key=reader.readLine();
if (key.equals("exit")) break;
else new ReadThread(key);
}
}
}
public static class ReadThread extends Thread {
TreeMap<Integer,Integer> map = new TreeMap<>();
public static String fileName;
public ReadThread(String fileName) {
this.fileName = fileName;
}
@Override
public void run() {
try (FileInputStream file=new FileInputStream(fileName)) {
while(file.available()>0) {
int key=file.read();
int value=map.getOrDefault(key,0);
map.put(key,++value);
}
} catch (IOException e) {}
int a=0,b=0;
for (Map.Entry<Integer,Integer> el:map.entrySet()) {
int key=el.getKey();
int value=el.getValue();
if(value>a||(value==a&&key<b)){
a=value;
b=key;
}
}
synchronized(resultMap) {resultMap.put(fileName,b);}
}
}
}