Задать вопрос
20 марта, 07:36

5. К слову "abracabra" можно применять операцию переворота любой ее подстроки, получая новые слова. Например, перевернув первые 4 буквы, мы получим "arbacabra". Тот же результат будет, если перевернуть первую подстроку "br". Затем операцию переворота можно повторять сколько угодно раз, применяя ее к различным подстрокам. Сколько различных слов мы при этом можем получить? Так, подобные операции над словом "abra" дают 12 различных слов. Ответ обосновать. Задачу можно решать как комбинаторно, так и с помощью программы, текст которой надо привести.

+4
Ответы (1)
  1. 20 марта, 09:54
    0
    1. Программа на Питоне, подсчитывающая все слова:

    word = "abracabra"

    n = len (word)

    words = set ([word])

    to_proceed = [word]

    while len (to_proceed) > 0:

    word = to_proceed. pop ()

    for l in range (n) :

    for r in range (l + 1, n + 1) :

    new_word = word[:l] + word[l:r][::-1] + word[r:]

    if new_word not in words:

    words. add (new_word)

    to_proceed. append (new_word)

    print (len (words))

    2. Комбинаторика: такими операциями можно получить любую перестановку букв исходного слова (переворачиваем подстроку [1:n], затем [2:n], получаем слово, в котором на 1 месте стоит n-й символ. Такими операциями можно последовательно на все места поставить любые символы). Подсчитаем число слов:

    - места для 4 букв a можно выбрать 9! / (4! 5!) = 126 способами

    - 2 буквы b на оставшиеся 5 мест можно поставить 5! / (2! 3!) = 10 способами

    - 2 буквы r на оставшиеся 3 места можно поставить 3 способами

    - место для c определяется однозначно

    Всего 126 * 10 * 3 = 3780 способов.

    Ответ: 3780
Знаете ответ?
Сомневаетесь в ответе?
Найдите правильный ответ на вопрос ✅ «5. К слову "abracabra" можно применять операцию переворота любой ее подстроки, получая новые слова. Например, перевернув первые 4 буквы, мы ...» по предмету 📘 Информатика, а если вы сомневаетесь в правильности ответов или ответ отсутствует, то попробуйте воспользоваться умным поиском на сайте и найти ответы на похожие вопросы.
Смотреть другие ответы
Похожие вопросы по информатике
Найти в строке указанную подстроку и заменить ее на новую. ее на новую. Строку, ее подстроку для замены и новую подстроку вводит пользователь.
Ответы (1)
Составить программу - калькулятор, которая запрашивает тип арифметической операции: 1-сложение, 2-вычитание, 3 - умножение, 4 - деление, а также два числа и производит над ними соответствующую арифметическую операцию.
Ответы (1)
Какие программы относятся к прикладным программам? A. Программы общего назначения. B. Специальные профессиональные программы. C. Языки программирования. D. Сервисные программы. E. Операционные системы.
Ответы (1)
Задана строка S требуется подсчитать кол-во включений подстроки PS1 в строке S и заменить на подстроку PS2
Ответы (1)
Соедини стрелками по смыслу. Системные программы Обеспечивают работу компьютера Прикладные программы Помогают создавать новые программы Инструментальные программы Помогают пользователю решать его задачи
Ответы (1)