Вероятно есть проблема в валидаторе при проверке требования: "Если список не упорядочен по возрастанию длины строки, то нужно вывести на экран индекс первого элемента, нарушающего такую упорядоченность.". Для входящих данных: сын дочь коты собака программа дедушка бабушка абракадабра аааабббб еще раз в результат должен быть 4, т.к. индекс начинается с 0. Но валидатор принимает результат 5 как правильный, будто считает начиная с 1. Вот мой код, который принял валидатор. В строке №36 на вывод передаю i+1, т.к. просто i не принимает, хотя вроде как должно.
package com.javarush.task.task07.task0718;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.lang.reflect.Array;
import java.util.ArrayList;

/*
Проверка на упорядоченность
*/
public class Solution {
    public static void main(String[] args) throws IOException {
        ArrayList<String> strs = new ArrayList<String>();
        ArrayList<Integer> ints1 = new ArrayList<Integer>();
        ArrayList<Integer> ints2 = new ArrayList<Integer>();
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

        for (int i = 0; i < 10; i++) {
            strs.add(reader.readLine());
            ints1.add(strs.get(i).length());
            ints2.add(strs.get(i).length());
        }

        int tmp = 0;
        for (int i = 0; i < ints2.size(); i++)
            for (int j = 0; j < ints2.size()-1; j++)
                if (ints2.get(j) > ints2.get(j+1)) {
                    tmp = ints2.get(j);
                    ints2.set(j, ints2.get(j+1));
                    ints2.set(j+1, tmp);
                }

        for (int i = 0; i < ints1.size(); i++)
            if (ints1.get(i) != ints2.get(i)) {
                System.out.println(i+1);
                break;
            }
    }
}