вот эту задачу, он принял, а мою нет хотя результаты одинаковые.
package com.javarush.task.task22.task2209;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
public class Solution {
public static void main(String[] args) throws IOException {
//...
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
String file = bufferedReader.readLine();
BufferedReader reader = new BufferedReader(new FileReader(file));
String[] words = reader.readLine().split(" ");
StringBuilder result = getLine(words);
System.out.println(result.toString());
}
public static StringBuilder getLine(String... words) {
StringBuilder sb = new StringBuilder();
if (words == null || words.length == 0) return sb;
LinkedList<String> list = new LinkedList<>(Arrays.asList(words));
int number = (int)(Math.random()*(list.size()));
String word = list.remove(number);
sb.append(word);
while (list.size() != 0) {
int count=0;
for (String counter : list) {
count++;
if (counter.toLowerCase().startsWith(sb.substring(sb.length() - 1))) {
sb.append(" ").append(counter);
list.remove(counter);
break;
}
if(count == list.size()){
sb.setLength(0);
getLine(words);;
}
}
}
return sb;
}
}