|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Konstantin Yegupov 2:5022/74.16 27 May 2003 01:23:32 To : Michael Medvedev Subject : Палиндром -------------------------------------------------------------------------------- Пон 26 Май 2003 23:28, Michael Medvedev --> All. MM> Дана строка символов. Дописать к ней наименьшее количество символов MM> чтоб получился палиндром. Исходная строка S длины L. Цикл по I от целая_часть((L+1)/2) до L. Строим строку S2=отрезать_первые(S,I) Строим строку S4=S2+обратный_порядок(S2) Сравнить (S=отрезать_первые(S4,L)) -> нашли, искомая=S4 Строим строку S3=отрезать_первые(S,I-1) Строим строку S5=S2+обратный_порядок(S3) Сравнить (S=отрезать_первые(S5,L)) -> нашли, искомая=S5 Конец цЫкла Это базовая идея, можно сильно оптимизировать. --YK ... /np: Titan TTC-D5TB - "ууууууууу"/ --- GoldED+/W32 1.1.4.3 * Origin: YK (2:5022/74.16) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/33393ed287d8.html, оценка из 5, голосов 10
|