В идее все проходит согласно условию, но валидатор ругается, почему?
package com.javarush.task.task22.task2209;
import java.io.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.StringTokenizer;
/*
Составить цепочку слов
*/
public class Solution {
public static void main(String[] args) throws IOException {
List<String> word = new ArrayList<>();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
BufferedReader fileReader = new BufferedReader(new FileReader(bufferedReader.readLine()));
bufferedReader.close();
while (fileReader.ready()) {
word.addAll(Arrays.asList(fileReader.readLine().split(" ")));
}
fileReader.close();
String[] wordstring = word.toArray(new String[0]);
StringBuilder result = getLine(wordstring);
System.out.println(result.toString());
}
public static StringBuilder getLine(String... words) {
Arrays.sort(words);
StringBuilder result = new StringBuilder();
result.append(words[0]);
String last = words[0].substring(words[0].length()-1);
List<String> list = new ArrayList<>(Arrays.asList(words));
list.remove(0);
while (!list.isEmpty()){
for (int i = 0; i < list.size();i++) {
if (list.get(i).substring(0,1).equalsIgnoreCase(last)) {
result.append(" "+list.get(i));
last = list.get(i).substring(list.get(i).length()-1);
list.remove(i);
}
}
}
return result;
}
}