Вывод получаю адекватный, пробовал и с одной короткой строкой запускать и с двумя и с тремя и подряд и в разных местах массива. Все ок. Но валидатору не нравится, может есть у кого идеи почему?
![]()
package com.javarush.task.task07.task0709;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
/*
Выражаемся покороче
*/
public class Solution {
public static void main(String[] args) throws Exception {
//напишите тут ваш код
ArrayList<String> strings = new ArrayList<>(5);
scanStrings(strings);
ArrayList<String> resultArray = findShortest(strings);
for(String result : resultArray)
{
System.out.println(result);
}
}
public static void scanStrings(ArrayList<String> strings)
{
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
try {
for (int i = 0; i < 5; i++) strings.add(reader.readLine());
}
catch (IOException e)
{
System.out.println(e);
}
}
public static ArrayList<String> findShortest(ArrayList<String> strings)
{
int minIndex = 0;
ArrayList<String> resultArray = new ArrayList<>();
for(int i=0; i<strings.size() - 1; i++) {
if (strings.get(i).length() < strings.get(i + 1).length()) {
minIndex = i;
}
}
resultArray.add(strings.get(minIndex));
for(int i = 0; i<strings.size()-1; i++)
{
if(strings.get(i).length() == strings.get(minIndex).length()
&& i!=minIndex)
{
resultArray.add(strings.get(i));
}
}
return resultArray;
}
}