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

ЗАДАНИЕ ПОЛЯКОВ ЕГЭ ИНФОРМАТИКА!

Кристина Смирнова Ученик (108), на голосовании 3 недели назад
119)(А.М. Кабанов) Алексей составляет 5-буквенные слова из букв М, А, Г, И, С, Т, Р. Каждую букву можно использовать не более одного раза, при этом в слове нельзя использовать более одной гласной. Сколько различных кодов может составить Алексей?

from itertools import*
p=list(map(''.join,product('МАГИСТР',repeat=5)))
p1=[x for x in p if (x.count('А')==1 or x.count('И')==1) and (x.count('М')==1 and\
x.count('Г')==1 and x.count('С')==1 and x.count('Т')==1 and x.count('Р')==1)]
print(p1)

хочу посмотреть список, а выдаёт: [ ]
ошибка в условии, но не могу понять что и как исправить
Голосование за лучший ответ
Дмитрий Мастер (1043) 1 месяц назад
 from itertools import permutations 

p = list(map(''.join, permutations('МАГИСТР', 5)))
p1 = [x for x in p if (x.count('А') + x.count('И') == 1)]

print(len(p1))
print(p1[:10])
Кристина СмирноваУченик (108) 1 месяц назад
Спасибо! Уже разобралась)
Дмитрий Мастер (1043) Кристина Смирнова, Молодец!
ДмитрийМастер (1043) 1 месяц назад
 from itertools import* 

permutations = list(permutations('МАГИСТР', 5))

words = [''.join(word) for word in permutations]

valid_words = [word for word in words if (word.count('А') + word.count('И')) <= 1]

print(len(valid_words))
print(valid_words)
Похожие вопросы