Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Andrew Lazarev                       2:5080/1003    08 Aug 2003  11:34:13
 To : Nikita Melikhov
 Subject : Re: Поиск слов
 -------------------------------------------------------------------------------- 
 
 > Подскажите алгоритм. Есть набор букв (допустим, 10). Hадо из этих букв
 > составить слово с макимальной длиной.
 
 Hадо понимать, что есть словарь.
 
 Вот идея на паскале.
 Заводим массив типа
 a : array [char] of integer;
 и в него запихиваем кол-во букв каждого типа (большенство будет 0).
 далее бежим по словарю
 for i:=1 to nwords do begin
   b:=a;
   bIsGood:=true;
   for j:=1 to length(word[i]) do begin
     dec(b[word[i][j]]);
     if b[word[i][j]]<0 then begin
       bIsGood:=false;
       break;
     end;
   end;
   if bIsGood then begin
     {сравнение с текушем лучшим}
   end;
 end;
 
 Если слова отсортировать по убыванию длины, то первое "хорошее" и будет
 ответом.
 
 --
 С уважением, Лазарев Андрей
 --- ifmail v.2.15dev5
  * Origin: (http://news.cca.usart.ru/) USURT's FidoNET<-> (2:5080/1003@fidonet)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Поиск слов   Nikita Melikhov   08 Aug 2003 02:14:36 
 Re: Поиск слов   Andrew Lazarev   08 Aug 2003 11:34:13 
Архивное /ru.algorithms/146469133bbc6.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional