Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [PHP] Строим цепочку


Автор: doook 6.6.2010, 11:06
Добрый день, помогите решить задачу.
Имеется набор неповторяющихся слов, составленных из заглавных букв английского
алфавита. Напишите программу, которая строит цепочку, состоящую из максимального
количества слов по правилу: следующее слово цепочки должно начинаться с буквы, на
которую оканчивается предыдущее слово. Цепочка может начинаться с любого слова, в
цепочке слова повторять запрещено. (Количество слов в наборе не превышает 20. Входные
данные: слова хранятся в строке с пробелом в качестве разделителя. Выходные данные:
первая строка содержит количество слов в найденной цепочке, слова в цепочке
перечисляются по одному в строке, начиная со второй строки.)

Код

$text = "explore cheat sheets that will guide you through some of \
zend studio's application development processes each cheat \
sheet is designed to help you complete a certain task by \
explaining the process step by step topics covered in the \
cheat sheets include phpdoc creation phpunit testing \
zend framework project creation usage data tools platform usage and more";

$arr = explode(" ",$text);
foreach ($arr as $val){
    if(empty($outline)){
        $outline[] = $val;
    }
    else {
        $last = $outline[count($outline)-1];
        if($last{strlen($last)-1} == $val{0}){
            $outline[] = $val;
        }
    }
}
echo implode(" ",$outline);

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)