А, точно, сразу до меня не дошло, что можно все цвета не проверять. Спасибо!
Наверно можно вместо стека завести массив размером в количество цветов, в который на

-ое место ставим

если идем через вершину с цветом

и ставим

если рекурсия возвращается назад ?
Если можно еще вопрос по этой задаче (думаю над ней весь день уже)
1) Если каждая

-ая вершина покрашена не в

цвет, а в

цветов (всего цветов

), и необходимо найти путь в дереве длиной

, такой, что все цвета из вершин этого пути разные. Можно ли это сделать аналогично предыдущей задаче, так же поиском в глубину например ?