Еще не начал решать задачу, но уже появились вопросы, сполеры в комментах читать не хочу, поэтому задаю вопросы здесь. 1. Слово может быть из одной буквы, к примеру слово "а", т.е. у этого слова первая и последняя буква "а"? 2. Первое что приходит в голову это перебирать(обходить) все варианты и потом уже выбирать лучший. Математику плохо помню, возможно есть методы решения подобных задач? ну незнаю, посчитать количество совпадений первых и последних букв и по какойто формуле вычислить максимально возможную длину цепочки. 3. Часто в программировании(на работе) попадаются такие задачи, где нужно "думать" :) в том смысле искать какието обходные пути решения а не просто перебором решать?