Валидатор ругается "В консоль через пробел должны выводиться все байты из файла с максимальным количеством повторов."
На входе файл "00012345677789,,," вывод "48 55 44"
На входе файл "0123444456789,,,," вывод "52 44 "
Скормил большой файл - на выходе "32" то бишь пробел, тоже верно для структуры того файла.
package com.javarush.task.task18.task1803;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
/*
Самые частые байты
*/
public class Solution {
public static void main(String[] args) throws Exception {
ArrayList<Byte> list = new ArrayList<>();
HashMap<Integer, Byte> any = new HashMap<>();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
String source = bufferedReader.readLine();
try (FileInputStream fileInputStream = new FileInputStream(source)) {
byte[] buffer = new byte[fileInputStream.available()];
while (fileInputStream.available() > 0) {
fileInputStream.read(buffer);
for (int i = 0; i < buffer.length; i++) {
list.add(buffer[i]);
}
}
}
int max = 0;
for (int i = 0; i < list.size(); i++) {
int tmpMax = Collections.frequency(list, list.get(i));
if(tmpMax > max) {max = tmpMax;}
}
for (int i = 0; i < list.size(); i++) {
int tmpMax = Collections.frequency(list, list.get(i));
if(tmpMax == max) { any.put(i, list.get(i));}
list.remove(i);
}
for (Byte index : any.values()) {
System.out.print(index + " ");
}
}
}