В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
Chvik
Chvik
14.01.2021 20:20 •  Информатика

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

Показать ответ
Ответ:
333unicorn333
333unicorn333
23.06.2020 18:20
Prime := { Получаем первое слово из последовательности }; 
while { не конец последовательности (не известно от куда аффтар получает слова ) } do 
  begin 
    Slovo := { Получаем очередное слово последовательности }; 
    if Length(Slovo) <= Length(Prime) then 
      begin 
        CopyPrime := Prime; 
        N := 1; 
        while (N <= Length(Slovo)) and (Pos(Slovo[N], CopyPrime) > 0 do 
          begin 
            Delete(CopyPrime, Pos(Slovo[N], CopyPrime), 1); 
            Inc(N); 
          end; 
        if N > Length(Slovo) then 
          { Slovo можно получить из первого слова } 
        else 
          { нельзя получить Slovo из первого слова } 
      end; 
  end; 
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота