Здравствуйте, понимаю, что можно решить и другими способами, но мне интересно, почему не проходит валидацию этот вариант. В IDEA работает корректно. Скорее всего просто не вижу элементарную ошибку, подскажите, плиз, где она.
package com.javarush.task.task18.task1803;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
/*
Самые частые байты
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String s = reader.readLine();
FileInputStream a1 = new FileInputStream(s);
ArrayList<Integer> allBites = new ArrayList<Integer>();
ArrayList<Integer> maxCountBites = new ArrayList<Integer>();
int data;
int count = 0;
int maxCount = 0;
// заношу все байты в allBites
while(a1.available()>0){
data = a1.read();
allBites.add(data);
}
a1.close();
// выясняю, каккое количество повторений является максимальным
for (int i = 0; i <= allBites.size()-1; i++) {
for (int j = 0; j <= allBites.size()-1; j++) {
if (allBites.get(i).equals(allBites.get(j))) {
count = count + 1;
if (count > maxCount) {
maxCount = count;
}
}
}count = 0;
}
// заношу в массив maxCountBites все значения с максимальным количеством повторений
for(int i = 0; i <= allBites.size()-1; i++){
for (int j = 0; j <= allBites.size()-1; j++){
if (allBites.get(i).equals(allBites.get(j))){
count = count + 1;
if(count==maxCount & !maxCountBites.contains(allBites.get(i))){
maxCountBites.add(allBites.get(i));
count = 0;
}
}
}
}
for (Integer x: maxCountBites){
System.out.print(x + " ");
}
}
}