Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите с информатикой ЕГЭ

Алексей Трофимов Знаток (302), открыт 3 недели назад
Артур составляет 6-буквенные коды перестановкой букв слова ВОРОТА. При этом нельзя ставить рядом две гласные.
Сколько различных кодов может составить Артур?
как это можно решить при помощи комбинаторики и питона?
1 ответ
Timur Magerramov Профи (607) 2 недели назад
 from itertools import permutations 

all_combs = permutations(list('ворота'))

combs = set()

for comb in all_combs:

for i in comb:

checks = []

try:

if not comb[comb.index(i)] in 'ao' and not comb[comb.index(i)+1] in 'ao':

checks.append(False)

else: checks.append(True)

if not any(checks):

combs.add(comb)

except IndexError:

pass

print(combs)
Timur MagerramovПрофи (607) 2 недели назад
ой, че то не работает, погоди
Timur MagerramovПрофи (607) 2 недели назад
Починикал, все работает :)
Timur MagerramovПрофи (607) 2 недели назад
В конце print(len(combs))
Похожие вопросы