Митрофан составляет коды из букв, входящих в слово МИТРОФАН. Код должен состоять из 6 букв, буквы в коде не должны повторяться, согласных в коде должно быть больше, чем гласных, две гласные буквы нельзя ставить рядом. Сколько кодов может составить Митрофан?
💡 Пошаговый разбор и решение:
Приведём аналитическое решение Юрия Красильникова.
Имеем 5 согласных и 3 гласных. Поэтому наше слово может содержать либо одну, либо две гласные (если гласных три, то согласных тоже три, что противоречит условию).
Подсчитаем К1 — количество слов, содержащих одну гласную. Выбираем одну гласную из трех и пять согласных из пяти, число способов — 3. Умножаем на число перестановок. К1 = 3 · 6!=2160.
Подсчитаем К2 — количество слов, содержащих две гласные. Выбираем две гласные из трех и четыре согласных из пяти, число способов — 3 · 5 = 15. Умножаем на число перестановок. К2 = 15 · 6! = 10800.
Подсчитаем К2р — количество слов с двумя гласными, где они стоят рядом. Из трех гласных А, И, О можно образовать шесть пар: АИ, ИА, АО, ОА, ИО, ОИ. Выбираем 4 согласных из пяти, число способов это сделать — 5. Переставляем четыре согласных и пару гласных (пару — как единое целое). К2р = 6 · 5 · 5! = 3600.
Число слов — это К1 + К2 − К2р = 2160 + 10800 − 3600 = 9360.
Приведём решение на языке Python.
s = 'МИТРОФАН'
count = 0
for a in s:
for b in s:
for c in s:
for d in s:
for e in s:
for f in s:
s1 = a + b + c + d + e + f
if s1.count('М') s1.count('И') + s1.count('О') + s1.count('А') and \
s1.count('АА') == 0 and s1.count('АИ') == 0 and s1.count('АО') == 0 and s1.count('ИА') == 0 and s1.count('ОА') == 0 and s1.count('ИО') == 0 and \
s1.count('ОИ') == 0 and s1.count('ОО') == 0 and s1.count('ИИ') == 0:
count += 1
print(count)
Ответ: 9360.
Приведём решение Софии Разаевой на языке Python.
from itertools import *
k = k1 = k2 = 0
c1 = 'ИОА'
c2 = 'МТРФН'
for p in permutations('МИТРОФАН', 6):
s = ''.join(p)
k1, k2 = 0, 0
k1 += (s[0] in c1)
k2 += (s[0] in c2)
for i in range(len(s)-1):
k1 += (s[i+1] in c1)
k2 += (s[i+1] in c2)
if s[i] in c1 and s[i+1] in c1:
break
else:
if k2 > k1:
k += 1
print(k)
Приведём решение Ильи Андрианова на языке Python.
from itertools import *
cnt = 0
for p in permutations('МИТРОФАН', r=6):
slovo = ''.join(p)
sogl = [x for x in slovo if x in 'МТРФН']
glas = [x for x in slovo if x in 'ИОА']
if len(sogl) > len(glas):
slovo = slovo.replace('О', 'А').replace('И', 'А')
if 'АА' not in slovo:
cnt += 1
print(cnt)
Приведём решение Бориса Савельева на языке Python.
import itertools
k=0
glas='ИОА'
for p in itertools.permutations('МИТРОФАН',6):
if sum([c in glas for c in p]) Приведём решение Юрия Красильникова на языке Python.
from itertools import*
s=permutations('МИТРОФАН', 6)
k=0
for i in s:
p=''.join(i)
if (p.count('М')+p.count('Т')+p.count('Р')+p.count('Ф')+p.count('Н')>p.count('И')+p.count('О')+p.count('А')):
if p.count('ИО')==0 and p.count('ИА')==0 and p.count('ОИ')==0 and p.count('ОА')==0 and p.count('АИ')==0 and p.count('АО')==0:
k+=1
print(k)
Имеем 5 согласных и 3 гласных. Поэтому наше слово может содержать либо одну, либо две гласные (если гласных три, то согласных тоже три, что противоречит условию).
Подсчитаем К1 — количество слов, содержащих одну гласную. Выбираем одну гласную из трех и пять согласных из пяти, число способов — 3. Умножаем на число перестановок. К1 = 3 · 6!=2160.
Подсчитаем К2 — количество слов, содержащих две гласные. Выбираем две гласные из трех и четыре согласных из пяти, число способов — 3 · 5 = 15. Умножаем на число перестановок. К2 = 15 · 6! = 10800.
Подсчитаем К2р — количество слов с двумя гласными, где они стоят рядом. Из трех гласных А, И, О можно образовать шесть пар: АИ, ИА, АО, ОА, ИО, ОИ. Выбираем 4 согласных из пяти, число способов это сделать — 5. Переставляем четыре согласных и пару гласных (пару — как единое целое). К2р = 6 · 5 · 5! = 3600.
Число слов — это К1 + К2 − К2р = 2160 + 10800 − 3600 = 9360.
Приведём решение на языке Python.
s = 'МИТРОФАН'
count = 0
for a in s:
for b in s:
for c in s:
for d in s:
for e in s:
for f in s:
s1 = a + b + c + d + e + f
if s1.count('М') s1.count('И') + s1.count('О') + s1.count('А') and \
s1.count('АА') == 0 and s1.count('АИ') == 0 and s1.count('АО') == 0 and s1.count('ИА') == 0 and s1.count('ОА') == 0 and s1.count('ИО') == 0 and \
s1.count('ОИ') == 0 and s1.count('ОО') == 0 and s1.count('ИИ') == 0:
count += 1
print(count)
Ответ: 9360.
Приведём решение Софии Разаевой на языке Python.
from itertools import *
k = k1 = k2 = 0
c1 = 'ИОА'
c2 = 'МТРФН'
for p in permutations('МИТРОФАН', 6):
s = ''.join(p)
k1, k2 = 0, 0
k1 += (s[0] in c1)
k2 += (s[0] in c2)
for i in range(len(s)-1):
k1 += (s[i+1] in c1)
k2 += (s[i+1] in c2)
if s[i] in c1 and s[i+1] in c1:
break
else:
if k2 > k1:
k += 1
print(k)
Приведём решение Ильи Андрианова на языке Python.
from itertools import *
cnt = 0
for p in permutations('МИТРОФАН', r=6):
slovo = ''.join(p)
sogl = [x for x in slovo if x in 'МТРФН']
glas = [x for x in slovo if x in 'ИОА']
if len(sogl) > len(glas):
slovo = slovo.replace('О', 'А').replace('И', 'А')
if 'АА' not in slovo:
cnt += 1
print(cnt)
Приведём решение Бориса Савельева на языке Python.
import itertools
k=0
glas='ИОА'
for p in itertools.permutations('МИТРОФАН',6):
if sum([c in glas for c in p]) Приведём решение Юрия Красильникова на языке Python.
from itertools import*
s=permutations('МИТРОФАН', 6)
k=0
for i in s:
p=''.join(i)
if (p.count('М')+p.count('Т')+p.count('Р')+p.count('Ф')+p.count('Н')>p.count('И')+p.count('О')+p.count('А')):
if p.count('ИО')==0 and p.count('ИА')==0 and p.count('ОИ')==0 and p.count('ОА')==0 and p.count('АИ')==0 and p.count('АО')==0:
k+=1
print(k)
Правильный ответ:
9360
📚 Похожие разобранные задания по предмету:
ID 30381 • Задание №7
Автоматическая камера производит растровые изображения размером 600 на 1000 пикселей. Для кодирования цвета ка...
ID 29394 • Задание №1
Укажите наибольшее десятичное число, которое в двоичной системе счисления можно записать с помощью трёх цифр....
🔗 Другие задания линии №8 по предмету Информатика:
ID 30810
Шифр кодового замка представляет собой последовательность из пяти символов, каждый из которых я...
ID 30811
Сколько существует различных трёхзначных чисел, записанных в четверичной системе счисления, в з...
ID 30812
Сколько существует различных четырёхзначных чисел, записанных в семеричной системе счисления, в...
ID 30813
Составляют 5-буквенные слова из букв слова ПЯТНИЦА. Найти количество слов, которые не начинают...
ID 30814
Сколько существует чисел, восьмеричная запись которых содержит 5 цифр, причем в записи нет цифр...