Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.02;
Скачать: CL | DM;

Вниз

Помогите с задачкой.   Найти похожие ветки 

 
Сергей Макаров ©   (2002-12-12 10:56) [0]

приветствую Вас. помогите плз с задачкой. Даны два слова определить, можноно ли из букв первого составить второе.
например:
Входные данные Входные данные
мусоровоз мусоровоз
мороз мурка
Выходные данные Выходные данные
можно нельзя.

спасибо!


 
greystone   (2002-12-12 11:10) [1]

Перебираешь буквы второго слова и ищеш их в первом с помощю POS


 
France   (2002-12-12 11:11) [2]

Как вариант могу предложить перебирать по буквам второе слово и проверять их на наличие в первом. При этом в словах убирать найденные буквы.

Пример: Машина - Маша.
находим "М".
остается ашина - аша.

далее находим "а".
остается шина - ша. и так далее.

В конечном итоге от второго слова ничего не остается. Это и есть решение.


 
greystone   (2002-12-12 11:12) [3]

И учитываешь количество одинаковых букв


 
Ru ©   (2002-12-12 11:13) [4]

Функция подсчета вхождений подстроки в строке:

http://delphibase.endimus.ru/?action=viewfunc&topic=strchange&id=10341

при указанной постановке приведеная функция подойдет.


 
Anatoly Podgoretsky ©   (2002-12-12 11:16) [5]

Не полные условия, не указано насчет одинаковых букв, отсюда разные решения


 
Ru ©   (2002-12-12 11:18) [6]

в догонку:
можно составить все сочетания из букв первого слова, а потом указанной функцией их протестировать. Э:)


 
Uncle Archi ©   (2002-12-12 11:41) [7]

Всё решается довольно просто на Pascal"e:

Var
a:array[char]of Integer;
s:string;
i,j:Integer;
c:CHar;
Begin
Readln(s);
FillChar(a,SizeOf(a),0);
For i:=1 to Length(s) do
Inc(a[s[i]]);
Readln(s);
For i:=1 to Length(s) do
Dec(a[s[i]]);
For c:=#0 to #255 do
If a[c]<0 then
Begin
Writeln("Нельзя");
Halt;
End;
Writeln("можно");
End.

Всё довольно просто для понимания.



Страницы: 1 вся ветка

Текущий архив: 2003.01.02;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.009 c
14-1867
saxon
2002-12-12 17:48
2003.01.02
Телефончик не нужен ?


14-1866
Anatoly Podgoretsky
2002-12-12 07:47
2003.01.02
Именинники 12 декабря


1-1824
EvgeniyM
2002-12-20 16:42
2003.01.02
Чем в Delphi хранить таблицу в памяти.


4-1925
Mike_Z
2002-11-14 22:21
2003.01.02
Как найти названия всех запущенных прог (как по Ctrl+Alt+Del)


6-1851
X-shadow
2002-11-05 06:16
2003.01.02
Вопрос про WinSock и отправку письма.