Добавить в корзинуПозвонить
Найти в Дзене

Разбор номера 4199 #polyakov по информатике #ЕГЭ8

Уровень: Сложный Ксения составляет слова из букв К, С, Е, Н, И, Я.
Каждая гласная буква встречается в слове не более двух раз.
Каждая согласная может стоять в слове на первой позиции, либо не встречаться вовсе. Сколько различных слов длиною более двух символов может составить Ксения? Особое внимание нужно уделить условию "после". Больше разборов на эту и другие задачи вы можете найти в нашем Телеграм канале: Информатика ЕГЭ | itpy 👨‍💻 Подписывайтесь на наш канал по теории Python: Азим вкатывается в IT | itpy 💻  Вы найдете тут много полезного!
Оглавление

Уровень: Сложный

Условие задачи:

Ксения составляет слова из букв К, С, Е, Н, И, Я.
Каждая гласная буква встречается в слове не более двух раз.
Каждая согласная может стоять в слове на первой позиции, либо не встречаться вовсе.

Сколько различных слов длиною более двух символов может составить Ксения?

Теоретическая справка:

Особое внимание нужно уделить условию "после".

Код решения:

Ответ: 1059
Ответ: 1059

Комментарии к коду:

  1. from itertools import *
    Импорт всех функций из модуля itertools.
  2. cnt = 0
    Инициализируется переменная cnt, которая будет использоваться для подсчета количества слов, удовлетворяющих заданным условиям.
  3. for l in range(3, 7+1):
    Запускается внешний цикл for по длине слова l от 3 до 7 включительно.
  4. for s in product('КСЕНИЯ', repeat=l):
    В цикле генерируются все возможные комбинации символов 'КСЕНИЯ' длины l.
  5. word = ''.join(s)
    Строка word, объединяя символы из текущего набора s.
  6. if all(word.count(x) <= 2 for x in 'ЕИЯ'):
    Проверяется, что количество вхождений символов 'Е', 'И' и 'Я' в слове word не превышает 2 для каждого из них.
  7. sogl = [x for x in word if x in 'КСН']
    Формируется список sogl, содержащий только согласные буквы из слова word (символы 'К', 'С', 'Н').
  8. if (len(sogl) == 1 and word[0] in sogl) or len(sogl) == 0:
    Проверяется условие, что либо в слове есть только одна согласная и это первая буква, либо в слове нет согласных.
  9. cnt += 1
    Если слово удовлетворяет условиям, счетчик увеличивается.
  10. print(cnt)
    Выводится количество слов, удовлетворяющих условиям.
Больше разборов на эту и другие задачи вы можете найти в нашем Телеграм канале: Информатика ЕГЭ | itpy 👨‍💻
Подписывайтесь на наш канал по теории Python: Азим вкатывается в IT | itpy 💻  Вы найдете тут много полезного!