Во втором цикле я хочу почистить массив от строк, которые не являются самыми длинными, но почему-то ничего не выходит :(
public class Solution {
    private static List<String> strings;

    public static void main(String[] args) throws Exception {
        strings = new ArrayList<String>();
        BufferedReader chtec = new BufferedReader(new InputStreamReader(System.in));
        for (int i = 0; i < 5; i++) {
            strings.add(i, chtec.readLine());
        }
        for (int i = 0; i < strings.size(); i++){
            if (strings.get(i).length() < strings.get(i + 1).length() && i != strings.size() - 1)
                strings.remove(i);
            if (strings.size() > 1 && i == strings.size() - 1 && strings.get(i).length() < strings.get(i - 1).length())
                strings.remove(i);
            if (strings.size() > 1 && i == strings.size() - 1 && strings.get(i).length() > strings.get(i - 1).length()) {
                for (int b = 0; b < strings.size(); b++)
                    if (b != strings.size() - 1)
                        strings.remove(b);
            }
            if (strings.size() == 1 && i == strings.size() - 1)
                break;
        }

        for (int i = 0; i < strings.size(); i++){
            System.out.println(strings.get(i));
        }

    }
}