Автор | Сообщение |
|
Отправлено: 14.06.21 15:58. Заголовок: Задание 8 №109
Здравствуйте, текст задачи: Петя составляет 7-буквенные слова из букв А, Б, Р, И, К, О, С. Каждую букву нужно использовать ровно 1 раз, при этом нельзя ставить подряд две гласные или две согласные. Сколько различных кодов может составить Петя? Не могу понять, как найти кол-во неподходящих слов. Нашла количество слов, в которых есть буквы АИ/ИА: 12*5! Но при этом, они пересекаются с множеством, где есть буквы ИО/АО, и далее я совсем запуталась, какое множество с каким пересекается и какое количество слов нужно вычесть. Может кто-нибудь объяснить алгоритм решения? Среди задач, для которых есть пояснения, нет подобных
|
|
|
Ответов - 4
[только новые]
|
|
|
Отправлено: 14.06.21 18:30. Заголовок: Ответ
Здравствуйте, Мария_987! Г - 3 (А, И, О) С - 4 (Б, Р, К, С) Условию задачи удовлетворяет единственный вариант: С Г С Г С Г С 4 3 3 2 2 1 1 4*3*3*2*2*1*1 = 144 Ответ: 144.
|
|
|
|
Отправлено: 13.07.23 19:39. Заголовок: polyakovss пишет: ..
polyakovss пишет: [quote]` здравствуте! а почему нельзя такой вариант: Г С Г С Г С Г?
|
|
|
|
Отправлено: 09.01.23 18:57. Заголовок: Ответ
from itertools import* c=0 for i in product('АБРИКОС',repeat=7): a=''.join(i) if ((a.count('А')==1 and a.count('Б')==1 and a.count('Р')==1 and a.count('И')==1 and a.count('К')==1 and a.count('О')==1 and a.count('С')== 1) and (('АА' not in a) and ('АИ' not in a) and ('ИА'not in a) and ('ИИ'not in a) and ('ИО'not in a) and ('ОИ' not in a) and ('ОО'not in a) and ('ОА' not in a) and('АО'not in a)) and (('ББ' not in a) and ('БР'not in a) and ('РБ' not in a) and ('РР'not in a) and ('БК' not in a) and ('КБ' not in a) and ('КК' not in a) and ('КР' not in a) and ('РК' not in a) and ('СС' not in a) and ('БС' not in a) and ('СБ' not in a) and ('СР' not in a) and ('РС' not in a) and ('КС' not in a) and ('СК'not in a))): c+=1 print(c,a) #Ответ:144
|
|
|
|
Отправлено: 14.07.23 22:28. Заголовок: from itertools impo..
from itertools import * k=0; al='АБРИКОС' for c in permutations(al, 7): s=''.join(c) for b in 'АИО' : s=s.replace(b,'А') for b in 'БРКС' : s=s.replace(b,'Б') k+=('АА' not in s and 'ББ' not in s) print('ответ: ',k)
|
|
|
|