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