Выводит и одну, и несколько максимальных срок. Валидатор не пропускает все равно. Где ошибка?
package com.javarush.task.task07.task0708;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
/*
Самая длинная строка
*/
public class Solution {
private static List<String> strings = new ArrayList<>();
public static void main(String[] args) throws Exception {
ArrayList<String> LongestStrings = new ArrayList<String>(); int max = 0; //список для максимумов и переменная для сравнения
for (int i=0; i<5; i++) {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
strings.add(reader.readLine()); // заполнили список
if (strings.get(i).length()>max) max = strings.get(i).length(); // отсеяли максимум
}
for (int i=0; i<strings.size();i++){
if (strings.get(i).length()==max) LongestStrings.add(strings.get(i)); // забрали максимальные сроки в новый список
}
for (int i=0; ; i++) { //ввывели значения нового списка построчно
System.out.println(LongestStrings.get(i));
}
}
}