.
package com.javarush.task.task18.task1823;
import java.io.*;
import java.util.HashMap;
import java.util.Map;
/*
Нити и байты
*/
public class Solution {
public static Map<String, Integer> resultMap = new HashMap<String, Integer>();
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String input;
while(!(input = reader.readLine()).equals("exit")) {
ReadThread thread = new ReadThread(input);
thread.start();
}
}
public static class ReadThread extends Thread {
FileInputStream fileStream;
String file;
public ReadThread(String fileName) {
file = fileName;
}
@Override
public void run() {
try {
fileStream = new FileInputStream(file);
Map<Integer, Integer> map = new HashMap<>();
while (fileStream.available() > 0) {
int key = fileStream.read();
if (map.containsKey(key)) {
int value = map.get(key);
map.put(key, ++value);
} else {
map.put(key, 1);
}
}
int bite = Integer.MAX_VALUE, count = 0;
for (Map.Entry<Integer, Integer> pair : map.entrySet()) {
if (pair.getValue() < count) {
bite = pair.getKey();
count = pair.getValue();
} else {
if (pair.getValue() == count && pair.getKey() < bite) {
bite = pair.getKey();
}
}
}
resultMap.put(file, bite);
} catch (Exception e) {
}
}
}
}