Вывод правильный, но не проходит условие задачи
package com.javarush.task.task22.task2209;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/*
Составить цепочку слов
*/
public class Solution {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String myString = scanner.nextLine();
scanner.close();
StringBuilder result = getLine(myString);
System.out.println(result.toString());
}
public static StringBuilder getLine(String... words) {
if (words.length < 1) return new StringBuilder("");
StringBuilder stringBuilder = new StringBuilder();
String[] wordsArray = Arrays.stream(words).flatMap(x -> Arrays.stream(x.split(" "))).toArray(String[]::new);
stringBuilder.append(wordsArray[0]);
String[] wordsArrayNew = wordsArray.clone();
for (int j = 0; j < wordsArray.length; j++) {
for (int i = 1; i < wordsArrayNew.length; i++) {
if (wordsArrayNew[i] == null) continue;
if (wordsArray[j].charAt(wordsArray[j].length() -1) == Character.toLowerCase(wordsArrayNew[i].charAt(0))) {
stringBuilder.append(" " + wordsArrayNew[i]);
wordsArrayNew[i] = null;
wordsArrayNew[j] = null;
j = i - 1;
break;
}
}
}
return stringBuilder;
}
}