Леся ИнфоФул | Информатика и Математика | Подготовка к ОГЭ и ЕГЭ 2026
474 subscribers
861 photos
56 videos
56 files
483 links
Я - Леся, и я- репетитор по информатике и математике! Залетай на канал и будем готовиться к ЕГЭ!

Мой ютуб канал, присоединяйся 🙃
https://youtube.com/@infopool_ege

Для личных сообщений или записи на занятия @olesya_zloo
https://infopoolege.tilda.ws/
Download Telegram
nums = [1, 2, 3, 4, 5, 6]
evens = [n if n % 2 == 0 else "odd" for n in nums]
print (evens)
Муд перед экзаменами , поныть можно в комментариях ❤️
Forwarded from ПЕЧЬ🔥
😢 День нытиков отмечается сегодня

В этот праздник можно жаловаться на всё и вся, и никто не вправе вас осудить.

Поздравляй тех, кто вечно всем недоволен.

👉 ПЕЧЬ - поделиться с другом 👈
Please open Telegram to view this post
VIEW IN TELEGRAM
Всем привет❤️ вчера был день нытья, а сегодня сделаем день мемасиков🎉 скидывайте ваши любимые в комментариях ❤️
Приветствую всех на моем канале!

Сегодня говорим о модуле itertools — мощном наборе функций для работы с последовательностями. С его помощью можно легко решать комбинаторные задачи, генерировать перестановки, сочетания и многое другое.
Делитесь в комментариях:

👉 Какие функции itertools вам уже знакомы?
👉 С какими задачами столкнулись при их использовании?

Погнали! 💻🔥

#Python #ЕГЭ #itertools #Программирование
1
Модуль itertools в Python — это коллекция полезных итераторов, которые значительно упрощают работу с последовательностями данных. Эти инструменты особенно полезны в задачах комбинаторики, обработки данных и при решении оптимизационных задач, включая задания из ЕГЭ по информатике.

Основные функции модуля itertools

1. product() — декартово произведение
Функция product() создает все возможные комбинации элементов из переданных последовательностей (декартово произведение).
from itertools import product

a = [1, 2]
b = [3, 4]
result = list(product(a, b))
print(result) # [(1, 3), (1, 4), (2, 3), (2, 4)]

Применение:
генерация всех возможных комбинаций для паролей, тестирование всех вариантов входных данных.

2. permutations() — перестановки
Генерирует все возможные перестановки элементов последовательности.
from itertools import permutations

s = 'abc'
result = list(permutations(s))
print(result)
# [('a', 'b', 'c'), ('a', 'c', 'b'), ('b', 'a', 'c'),
# ('b', 'c', 'a'), ('c', 'a', 'b'), ('c', 'b', 'a')]

Применение:
задачи на составление слов, комбинаторные задачи.

3. combinations() — комбинации
Создает все возможные комбинации элементов заданной длины.
from itertools import combinations

a = [1, 2, 3, 4]
result = list(combinations(a, 3))
print(result) # [(1, 2, 3), (1, 2, 4), (1, 3, 4), (2, 3, 4)]

4. chain() — объединение последовательностей
Объединяет несколько итерируемых объектов в один.
from itertools import chain

a = [1, 2, 3]
b = ['a', 'b', 'c']
result = list(chain(a, b))
print(result) # [1, 2, 3, 'a', 'b', 'c']

5. cycle() — бесконечный цикл
Повторяет элементы последовательности бесконечно.
from itertools import cycle

a = [1, 2, 3]
a1 = cycle(a)
for i in range(6):
print(next(a1)) # 1, 2, 3, 1, 2, 3

6. islice() — срез для итерируемых объектов
Эффективный аналог среза для больших последовательностей.
from itertools import islice

a = range(1, 11)
slicea = islice(a, 2, 7)
print(list(slicea)) # [3, 4, 5, 6, 7]

7. count() — бесконечный счетчик
Генерирует бесконечную последовательность чисел.
from itertools import count

for i in count(3):
if i > 10:
break
print(i) # 3, 4, 5, 6, 7, 8, 9, 10
Примеры решения задач ЕГЭ

Задача 1:
Сколько существует 3-буквенных слов из букв П, Л, А, Н, где буква А встречается хотя бы 1 раз?
from itertools import product

k = 0
for i in product("ПЛАН", repeat=3):
s = ''.join(i)
if s.count('А') >= 1:
k += 1
print(k) # Ответ: 37

Задача 2:
Сколько 6-буквенных кодов можно составить из букв Р, У, С, Л, А, Н, где каждая буква используется один раз и две гласные не стоят рядом?
from itertools import permutations

k = 0
for i in permutations("РУСЛАН"):
s = ''.join(i)
if 'УА' not in s and 'АУ' not in s:
k += 1
print(k) # Ответ: 480



Модуль itertools — это мощный инструмент для работы с последовательностями, который может значительно упростить решение сложных задач. Освоив эти функции, вы сможете эффективно решать комбинаторные задачи и оптимизировать свой код.
Виктор составляет таблицу кодовых слов для передачи сообщений, каждому сообщению соответствует своё кодовое слово. В качестве кодовых слов Виктор использует 5-буквенные слова, в которых могут быть только буквы Д, Г, И, А, Ш, Э, причём слово не должно начинаться с гласной и не должно заканчиваться согласной.
Сколько различных кодовых слов может использовать Виктор?
Anonymous Quiz
0%
2592
0%
1728
0%
7776
100%
1944
Все шестибуквенные слова, в составе которых могут быть только буквы П, О, Б, Е, Д, А, записьны в алфавитном порядке и пронумерованы начиная с 1.
Ниже приведено начало списка.
1. AAAAAA
2. АААААБ
3. АААААД
4. AAAAAE
5. АААААО
6. АААААП
...