Информатика | Илья Андрианов | itpy 🧑‍💻
1.1K subscribers
263 photos
22 videos
19 files
641 links
По рекламе: @ilandroxxy

Шпаргалки: clck.ru/3FwqWt
📚 Наши курсы: clck.ru/3FwqYb

Разборы: clck.ru/3Fwqay
💬 Чатик: clck.ru/3FwqZa

📺 YouTube: clck.ru/3FwqbX

🙋‍♂️ Я автор: @ilandroxxy
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
🚩 Разбор номера 15947 #reshu по информатике #ЕГЭ8
Уровень: Базовый

🚩 Условие задачи:
Все четырёхбуквенные слова, составленные из букв А, Л, Г, О, Р, И, Т, М, записаны в алфавитном порядке и пронумерованы, начиная с 1.
Начало списка выглядит так:
1. АААА
2. АААГ
3. АААИ
4. АААЛ

Под каким номером в списке идёт первое слово, которое начинается с букв ИГ?


🚩 Теоретическая справка:
Функция sorted() позволяет легко получить алфавитный порядок. А оператор break позволяет остановиться на первом слове.


👩‍💻 Код решения:
from itertools import product
k = 0
for s in product(sorted('АЛГОРИТМ'), repeat=4):
word = ''.join(s)
k += 1
if word[:2] == 'ИГ':
print(k)
break


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

1⃣ from itertools import product
Импортируется функция product из модуля itertools, которая генерирует декартово произведение итерабельных объектов.


2⃣ k = 0
Инициализируется переменная k, которая будет использоваться для отслеживания количества итераций.


3⃣ for s in product(sorted('АЛГОРИТМ'), repeat=4):
Запускается цикл for, в котором производится комбинация символов из отсортированной строки 'АЛГОРИТМ' с повторением в 4 раза.


4⃣ word = ''.join(s)
Создается строка word, объединяя символы из текущей комбинации s.


5⃣ k += 1
Увеличивается счетчик k на 1 для подсчета количества итераций.


6⃣ if word[:2] == 'ИГ':
Проверяется, начинается ли текущее слово word с символов 'ИГ'.


7⃣ print(k)
Если условие выполняется, то выводится значение счетчика k.


8⃣ break
Происходит прерывание цикла после печати значения счетчика для первого слова, начинающегося с 'ИГ'.


👩‍💻 Альтернативное решение:
s = sorted('АЛГОРИТМ')
k = 0
for a in s:
for b in s:
for c in s:
for d in s:
word = a + b + c + d
k += 1
if word[:2] == 'ИГ':
print(k)
exit()


#⃣ Полный список разборов в одном месте

Информатика ЕГЭ | чатик itpy 🧑‍💻
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
1064
This media is not supported in your browser
VIEW IN TELEGRAM
🚩🚩 Разбор номера 18289 #reshu по информатике #ЕГЭ23
Уровень: Средний


Задач из ОГЭ, 5 номер, но считаю её весьма полезной, так как это усложненная вариация 23 номера ЕГЭ.

🚩 Условие задачи:
1. раздели на 2
2.  вычти 1

Составьте алгоритм получения из чиcла 65 числа 4, содержащий не более 5 команд. В ответе запишите только номера команд.


🚩 Теоретическая справка:
Аудио с пояснением к коду решения оставлю в комментариях.


👩‍💻 Код решения:
def F(a, b, t):
if a < b or len(t) > 5:
return 0
elif a == b and len(t) <= 5:
print(t)
return 1
else:
return F(a / 2, b, t+'1') + F(a-1, b, t+'2')

F(65, 4, '')

# Ответ: 21111


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

1⃣ def F(a, b, t):
Определение функции F с тремя параметрами a, b, и t.


2⃣ if a < b or len(t) > 5:
Проверка условия: если a меньше b или длина строки t превышает 5 символов.


3⃣ return 0
Возврат значения 0, если условие из пункта 2 истинно.


4⃣ elif a == b and len(t) <= 5:
Другое условие: если a равно b и длина строки t не превышает 5 символов.


5⃣ print(t)
Вывод текущего состояния строки t.


6⃣ return 1
Возврат значения 1, если условие из пункта 4 истинно.


7⃣ else:
В случае, если ни одно из вышеперечисленных условий не выполнено.


8⃣ return F(a / 2, b, t+'1') + F(a-1, b, t+'2')
Рекурсивный вызов функции F с различными значениями аргументов: для первого вызова a уменьшается вдвое и к строке t добавляется символ '1', для второго вызова a уменьшается на 1, к строке t добавляется символ '2'.


0⃣ F(65, 4, '')
Вызов функции F с начальными значениями a=65, b=4, и пустой строкой t.


#⃣ Полный список разборов в одном месте

Информатика ЕГЭ | чатик itpy 🧑‍💻
Поддержать автора: boosty 💵
Please open Telegram to view this post
VIEW IN TELEGRAM
854
🔤🔤🔤🔤 🔤🔤🔤🔤🔤🔤🔤🔤🔤
Пару слов об авторе канала, давайте знакомиться!

#⃣ Полный список разборов в одном месте
#⃣ Шпаргалки по всем номерам ЕГЭ
#⃣ Вся теория для ЕГЭ в одном месте

📱 Теория: #tpy
📺 Видео: #view
💡 Полезное: #useful
🫰 Шпаргалки: #шпора
👨‍🏫 Про универы: #university

📚 Сборники:
#kege #yandex
#reshu #statgrad
#polyakov

📱 Наш YouTube канал
📱 Читайте ДЗЕН канал
📱 Наши Telegram каналы:

🚩 Подготовка к экзамену ЕГЭ:
Информатика ЕГЭ | itpy 👨‍💻

🚩 Здесь выкладываю теорию Python:
Программирование на Python | itpy 💻

🚩 Подготовка к экзамену ОГЭ:
Информатика ОГЭ | itpy 👨‍🏫

🚩 Честные обзоры на IT университеты:
Hey Student! 🎓


🔤🔤 🔤🔤🔤🔤🔤🔤🔤
😶 Автор канала: @ilandroxxy
Please open Telegram to view this post
VIEW IN TELEGRAM
45542
У нас уже собралась неплохая такая подборка 8 номеров, сохраняем и пользуемся! #ЕГЭ8 #useful


🚩 Разбор номера 17671 #kege по информатике #ЕГЭ8
Автор: Пересдача 04.07.2024
Уровень: Базовый


🚩 Разбор номера 17627 #kege по информатике #ЕГЭ8
Автор: Резервный день 19.06.2024
Уровень: Базовый


🚩 Разбор номера 5626 #kege по информатике #ЕГЭ8

🚩 Разбор номера 8417 #kege по информатике #ЕГЭ8

🚩 Разбор номера 15947 #reshu по информатике #ЕГЭ8
Уровень: Базовый

🚩 Разбор номера 4199 #polyakov по информатике #ЕГЭ8
Уровень: Сложный

🚩 Разбор номера 12917 #kege по информатике #ЕГЭ8
Автор: PRO100ЕГЭ
Уровень:
Базовый

🚩 Разбор номера из нового варианта #statgrad по информатике #ЕГЭ8
Автор: Статград
Уровень: Базовый


🚩 Разбор номера 11827 #kege по информатике #ЕГЭ8
Автор: (Л. Шастин)
Уровень: Средний


🚩 Разбор номера 10090 #kege по информатике #ЕГЭ8
Уровень: Базовый


🚩 Разбор номера 12240 #kege по информатике #ЕГЭ8
Уровень:
Базовый

🚩 Разбор номера 11827 #kege по информатике #ЕГЭ8
Автор: (Л. Шастин)
Уровень: Средний


🚩 Разбор номера 17521 #kege по информатике #ЕГЭ8
Автор: Основная волна 07.06.24
Уровень: Базовый


🚩 Разбор номера 17862 #kege по информатике #ЕГЭ8
Автор: Демоверсия 2025
Уровень: Базовый


Информатика ЕГЭ | itpy 🧑‍💻
Поддержать автора донатом 💵
Please open Telegram to view this post
VIEW IN TELEGRAM
843
This media is not supported in your browser
VIEW IN TELEGRAM
🚩 Разбор номера 7667 #reshu по информатике #ЕГЭ8
Автор: РЕШУ ЕГЭ
Уровень: Базовый


🚩 Условие задачи:
Сколько слов длины 5, начинающихся с гласной буквы, можно составить из букв Е, Г, Э? Каждая буква может входить в слово несколько раз.


🚩 Теоретическая справка:
Крайне интересная задача, так как позволяет представить вот такое простое и эстетичное решение. Стандартное решение я постараюсь приложить в комментариях к этому посту.


👩‍💻 Код решения:
from itertools import product
print([slovo[0] in 'ЕЭ' for slovo in product('ЕГЭ', repeat=5)].count(True))

# Ответ: 162


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

1⃣ from itertools import product
Импортируем функцию product из модуля itertools, которая позволяет генерировать декартово произведение итераторов.


2⃣ print([slovo[0] in 'ЕЭ' for slovo in product('ЕГЭ', repeat=5)]
В генераторе мы пробегаем все получившиеся слова через функцию product и если первый элемент слова является буквами Е или Э, то в список будет падать bool значение True.


3⃣ .count(True))
Считаем количество истинных значений (True) в полученном списке и выводим это значение на экран.


#⃣ Полный список разборов в одном месте

Информатика ЕГЭ | чатик itpy 🧑‍💻
Поддержать автора донатом 💵
Please open Telegram to view this post
VIEW IN TELEGRAM
3644
🚩 Сохраняйте список уже разобранных задачи на нашем канале #ЕГЭ15 #useful

🚩🚩 Разбор номера 16447 #kege по информатике #ЕГЭ15

🚩🚩 Разбор номера 34537 #reshu по информатике #ЕГЭ15

🚩🚩 Разбор номера #statgrad по информатике #ЕГЭ15
Автор: Статград
Уровень:
Сложный

🚩🚩 Разбор номера 12924 #kege по информатике #ЕГЭ15
Уровень: Базовый


🚩🚩 Разбор номера 16381 #kege по информатике #ЕГЭ15
Автор: ЕГКР 27.04.24
Уровень: Базовый


🚩🚩 Разбор номера 8503 #kege по информатике #ЕГЭ15
Автор: Апробация 17.05
Уровень: Базовый


👨‍💻 Наша подборка Stepik задач №15 для подготовки #ЕГЭ9 #useful
1. Домашка, задачи базового уровня (ФИПИ)
2. Практика, задачи повышенной сложности

Информатика ЕГЭ | itpy 🧑‍💻
Кстати у нас есть чатик
Please open Telegram to view this post
VIEW IN TELEGRAM
48542
🚩 Сохраняйте список уже разобранных задачи на нашем канале #ЕГЭ14 #useful

Наша подборка Stepik задач №14 для подготовки 👨‍💻
1. Домашка, задачи базового уровня (ФИПИ)
2. Практика, задачи повышенной сложности

🚩🚩 Разбор номера 8425 #kege по информатике #ЕГЭ14

🚩🚩 Разбор номера 39243 #reshu по информатике #ЕГЭ14
Уровень: Базовый

🚩🚩 Разбор номера 13246 #kege по информатике #ЕГЭ14
Автор задачи: (М. Попков)
Уровень: Средний

🚩🚩 Разбор номера 5895 #kege по информатике #ЕГЭ14
Автор задачи: (А. Игнатюк)
Уровень: Сложный

🚩🚩 Разбор номера 4937 #kege по информатике #ЕГЭ14
Уровень: Средний

🚩🚩 Разбор номера #statgrad по информатике #ЕГЭ14
Автор: Статград
Уровень:
Средний

🚩🚩 Разбор номера 16261 #kege по информатике #ЕГЭ14
Автор: Е.Джобс
Уровень: Базовый

🚩🚩 Разбор номера 13910 #kege по информатике #ЕГЭ14
Автор: Л. Шастин
Уровень: Базовый

🚩🚩 Разбор номера 17870 #kege по информатике #ЕГЭ14
Автор: Демоверсия 2025
Уровень: Базовый


🚩🚩 Разбор номера 17868 #kege по информатике #ЕГЭ14
Автор: Демоверсия 2025
Уровень: Базовый


Информатика ЕГЭ | itpy 🧑‍💻
Кстати у нас есть чатик
Please open Telegram to view this post
VIEW IN TELEGRAM
6❤‍🔥5🔥2🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
🚩🚩 Разбор номера 45258 #reshu по информатике #ЕГЭ24
Автор: Решу ЕГЭ
Уровень: Базовый


🚩 Условие задачи:
Определите максимальное количество идущих подряд пар символов AB или CB в прилагаемом файле.

Искомая подпоследовательность должна состоять только из пар AB, или только из пар CB, или только из пар AB и CB в произвольном порядке следования этих пар.


🚩 Теоретическая справка:
Этот номер очень удобно решается через замену всех "лишних" элементов.


👩‍💻 Код решения:
s = open('files/24.txt').readline()
s = s.replace('AB', '*').replace('CB', '+')

for x in 'ABC':
s = s.replace(x, ' ')

print(max([len(x) for x in s.split()]))
print(len(max(s.split(), key=len)))

# Ответ: 65


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

1⃣ s = open('files/24.txt').readline()
- Открывает файл с именем 'files/24.txt' и читает первую строку из этого файла, затем сохраняет её в переменную s.


2⃣ s = s.replace('AB', '*').replace('CB', '+')
- Заменяет все вхождения 'AB' в строке Услона символ '*', затем заменяет все вхождения 'CB' на символ '+'.


3⃣ for x in 'ABC':
- Инициализирует цикл, который будет последовательно проходить через каждую букву в строке 'ABC'.


4⃣ s = s.replace(x, ' ')
- Для каждой буквы x в строке 'ABC', заменяет все её вхождения в строкеЭ24
Ана пробелы.


5⃣ print(max([len(x) for x in s.split()]))
- Разделяет строку s на части (слова), используя пробелы как разделители, затем вычисляет длину каждой части и выводит максимальную из них.


6⃣ print(len(max(s.split(), key=len)))
- Так же, как предыдущая строка, разделяет строку s на части (слова), используя пробелы в качестве разделителей, и затем находит и выводит длину самой длинной части в строке.


#⃣ Полный список разборов в одном месте

Информатика ЕГЭ | чатик itpy 🧑‍💻
Наша Stepik подборкой задач😼
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥11🔥4👍3
This media is not supported in your browser
VIEW IN TELEGRAM
🚩 Разбор номера 3700 #reshu по информатике #ЕГЭ8
Автор: Решу ЕГЭ
Уровень: Базовый


🚩 Условие задачи:
Все 5-буквенные слова, составленные из букв Б, К, Ф, Ц, записаны
в алфавитном порядке и пронумерованы. Вот начало списка:
1. БББББ
2. ББББК
3. ББББФ
4. ББББЦ
5. БББКБ

Запишите слово, которое стоит на 486-м месте от начала списка.


🚩 Примечание к разбору:
Разберем задачу 3 разными способами и каждый выберет, тот способ,который ему понравился.



👩‍💻 Ход решения номер 🚩
s = sorted('БКФЦ')
print(s) # ['Б', 'К', 'Ф', 'Ц']
n = 0
for a in s:
for b in s:
for c in s:
for d in s:
for e in s:
slovo = a + b + c + d + e
n += 1
if n == 486:
print(n, slovo)


🚩 Комментарии к коду:
s = sorted('БКФЦ')

1⃣ Создается список s, содержащий отсортированные символы строки 'БКФЦ'.

print(s)  # ['Б', 'К', 'Ф', 'Ц']

2⃣ Выводится список s для проверки.

n = 0

3⃣ Вводим счетчик n, который будем использовать для подсчета количества сгенерированных слов.

for a in s:
for b in s:
for c in s:
for d in s:
for e in s:

4⃣ Перебираем все возможные комбинации из 5 символов, используя элементы списка s. Каждый цикл отвечает за одну позицию в слове.

slovo = a + b + c + d + e

5⃣ Формируется слово slovo путем объединения символов a, b, c, d, e.

n += 1

6⃣ Счетчик n увеличивается на 1 для каждой новой комбинации.

if n == 486:
print(n, slovo)

7⃣ Если счетчик n достигает значения 486, выводится номер комбинации и само слово.


👩‍💻 Ход решения номер 🚩
from itertools import *
n = 0
for p in product(sorted('БКФЦ'), repeat=5):
slovo = ''.join(p)
n += 1
if n == 486:
print(n, slovo)


🚩 Комментарии к коду:
from itertools import *

1⃣ Импортируется модуль itertools, который предоставляет функции для работы с комбинациями.

n = 0

2⃣ Вводим счетчик n для подсчета количества сгенерированных слов.

for p in product(sorted('БКФЦ'), repeat=5):

3⃣ Используется функция product, которая генерирует все возможные комбинации из символов 'Б', 'К', 'Ф', 'Ц' с длиной 5 .

slovo = ''.join(p)

4⃣ Каждый элемент p преобразуется в строку slovo с помощью метода join.

n += 1

5⃣ Счетчик n увеличивается на 1 для каждой новой комбинации.

if n == 486:
print(n, slovo)

6⃣ Если счетчик n достигает значения 486, выводится номер комбинации и само слово.


👩‍💻 Ход решения номер 🚩
from itertools import *
for n, p in enumerate(product(sorted('БКФЦ'), repeat=5), 1):
slovo = ''.join(p)
if n == 486:
print(n, slovo)


🚩 Комментарии к коду:
from itertools import *

1⃣ Импортируется модуль itertools.

for n, p in enumerate(product(sorted('БКФЦ'), repeat=5), 1):

2⃣ Используем функцию enumerate, которая добавляет счетчик n к каждому элементу, генерируемому функцией product. Счетчик начинается с 1.

slovo = ''.join(p)

3⃣ Каждый элемент p преобразуется в строку slovo с помощью метода join.

if n == 486:
print(n, slovo)

4⃣ Если счетчик n достигает значения 486, выводится номер комбинации и само слово.

#⃣ Полный список разборов в одном месте

Информатика ЕГЭ | чатик itpy 🧑‍💻
Второй канал про теорию Python 📱
Please open Telegram to view this post
VIEW IN TELEGRAM
👍843🔥2