Информатика | Илья Андрианов | itpy 🧑‍💻
1.04K subscribers
264 photos
20 videos
19 files
630 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
🚩🚩 Разбор номера #statgrad по информатике #ЕГЭ23
Автор: Статград
Уровень:
Средний

🚩 Условие задачи:
У исполнителя есть три команды, которые обозначены буквами:
A. Вычесть 1
B. Разделить на 2
С. Разделить на 3

Команда B может быть исполнена только для чётного числа, команда C –
только для числа, кратного 3.

Сколько существует программ, которые преобразуют исходное число 19
в число 1 и при этом траектория вычислений не содержит чисел 12 и 15?


👩‍💻 Код решения:
def F(a, b):
A, B, C = 0, 0, 0
if a <= b or a == 12 or a == 15:
return a == b
A = F(a - 1, b)
if a % 2 == 0:
B = F(a // 2, b)
if a % 3 == 0:
C = F(a // 3, b)
return A + B + C

print(F(19, 1))

# Ответ: 43


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

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


2⃣ A, B, C = 0, 0, 0
Инициализация переменных A, B, C с начальным значением 0.


3⃣ if a <= b or a == 12 or a == 15:
Проверка условия: если a меньше или равно b, или a равно 12, или a равно 15, то выполнить следующий блок кода.


4⃣ return a == b
Возврат результата сравнения a и b (логическое значение True или False).


5⃣ A = F(a - 1, b)
Вызов функции F с аргументами a - 1 и b и присвоение результата переменной A.


6⃣ if a % 2 == 0:
Проверка условия: если a делится на 2 без остатка.


7⃣ B = F(a // 2, b)
Вызов функции F с аргументами a // 2 и b и присвоение результата переменной B.


8⃣ if a % 3 == 0:
Проверка условия: если a делится на 3 без остатка.


0⃣ C = F(a // 3, b)
Вызов функции F с аргументами a // 3 и b и присвоение результата переменной C.


1⃣0⃣ return A + B + C
Возврат суммы значений переменных A, B, C.


1⃣1⃣ print(F(19, 1))
Вызов функции F с аргументами 19 и 1 и вывод результата выполнения функции.


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

Информатика ЕГЭ | чатик itpy 🧑‍💻
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
632
Информатика | Илья Андрианов | itpy 🧑‍💻
Ребят, мы учли результаты опроса по оформлению подборки задач:

1) Решили скрыть ответы на задачи, чтобы вы могли сначала подумать самостоятельно.
2) Доступ к форуму с решениями будет открываться после трех неудачных попыток решения задачи.
3) Для 9-й задачи мы постараемся приложить .csv файлы для удобства.

Если у вас есть еще предложения, идеи или пожелания, оставляйте их в комментариях! 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
975
🔤🔤🔤🔤🔤🔤🔤🔤 🔤🔤🔤🔤🔤

📚 Преимущество нашего сборника в том, что здесь предусмотрен встроенный форум с решениями, где каждый желающий может оставить свой вариант для той или иной задачи.

Таким образом можно найти подсказку, исправить опечатку в своем коде, или найти вдохновение в чужом решении, чтобы написать более оптимальный код 💻

Я настоятельно призываю вас делиться своими вариантами решений, даже если в задаче просто просят "оставить ответ" 🫡

P.S. 26-27 номера скоро будут добавлены☝️


Информатика ЕГЭ | itpy 👨‍💻
Поддержать автора донатом 💵
Please open Telegram to view this post
VIEW IN TELEGRAM
6322
Media is too big
VIEW IN TELEGRAM
🚩 Реферальные ссылки для канала/группы #useful #view

Мы с Lizzerd решили сделать эту рубрику постоянной и заливать такие коротенькие видосы для вас каждое воскресенье!

Информатика ЕГЭ | itpy 👨‍💻
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
433
У меня возник интересный вопрос: каким образом вы предпочитаете работать на занятиях (формат не имеет значения) – с включенной веб-камерой или без нее? 🤔
Anonymous Poll
29%
👍 С включенной
71%
👎 Без камеры
This media is not supported in your browser
VIEW IN TELEGRAM
🚩🚩 Разбор номера #statgrad по информатике #ЕГЭ24
Автор: Статград
Уровень:
Средний

🚩 Условие задачи:
Определите максимальную длину непрерывного фрагмента, который начинается и заканчивается одной и той же буквой из первой половины алфавита (от A до M) и не содержит эту букву внутри.


👩‍💻 Код решения:
s = open('24.txt').readline()
maxi = 0
for a in 'ABCDEFGHIJKLM':
s = s.replace(a, f'{a} {a}')
maxi = max(maxi, max([len(x) for x in s.split()]))
s = s.replace(f'{a} {a}', a)

print(maxi)

# Ответ: 322


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

1⃣ s = open('24.txt').readline()
Чтение строки из файла '24.txt' и присвоение её содержимого переменной s.


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


3⃣ for a in 'ABCDEFGHIJKLM':
Начало цикла по буквам из строки 'ABCDEFGHIJKLM'.


4⃣ s = s.replace(a, f'{a} {a}')
Замена каждого вхождения буквы a в строке s на a a.


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


6⃣ s = s.replace(f'{a} {a}', a)
Восстановление оригинальной строки, заменяя a a на a.


7⃣ print(maxi)
Вывод значения maxi, которое содержит максимальную длину слова после обработки всеми буквами из цикла.


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

Информатика ЕГЭ | чатик itpy 🧑‍💻
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
853
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Обработка исключений #tpy

Обработка исключений играет важную роль в программировании, так как ошибки могут привести к непредсказуемым последствиям и прерыванию работы скрипта.

Одним из способов обработки исключений в Python является конструкция try-except. Она позволяет выполнить определенный код в блоке try, и если во время его выполнения возникает ошибка, перехватить и обработать эту ошибку в блоке except.

Пример использования конструкции try-except:
try:
# уязвимая функция
except Exception as e:
print(f"Произошла ошибка: {e}")
# код обработки ошибки


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

🚩 Условие задачи:
Найдите все натуральные числа, не превышающие 10**9, которые
соответствуют маске 4*64*9?7 и при этом без остатка делятся на 9117.
В ответе запишите все найденные числа в порядке возрастания.


👩‍💻 Код решения:
from fnmatch import *
for x in range(9117, 10**9, 9117):
if fnmatch(str(x), '4*64*9?7'):
print(x)

# Ответ:
# 464967
# 41764977
# 406444977
# 436439907
# 464337927
# 464884947


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

1⃣ from fnmatch import *
Импорт всех функций из модуля fnmatch, который предоставляет возможность использовать шаблоны для сравнения строк.


2⃣ for x in range(9117, 10**9, 9117):
Цикл for для переменной x в диапазоне от 9117 до 10^9 с шагом 9117.


3⃣ if fnmatch(str(x), '4*64*9?7'):
Проверка условия: если строковое представление числа x соответствует шаблону '4*64*9?7' с помощью функции fnmatch.


4⃣ print(x)
Вывод числа x, которое удовлетворяет условию проверки шаблона.


Таким образом, приведенный код ищет числа в заданном диапазоне, которые соответствуют шаблону '4*64*9?7', где символ * означает любую последовательность символов, а символ ? означает любой одиночный символ.

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

Информатика ЕГЭ | чатик itpy 🧑‍💻
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
7543
📱 Хотел бы подготовить шпаргалку по 🚩🚩 номерам, после того как сделаю несколько разборов.

Поделитесь ссылкой/номером на задачки, которые могут подойти под формат канала, а я постараюсь сообразить на них разборы 😼
Please open Telegram to view this post
VIEW IN TELEGRAM
167621
Видимо шпаргалка по 23 номерам никому не нужна.. попробуем по-другому 😶
Please open Telegram to view this post
VIEW IN TELEGRAM
12882
Какую задачку разобрать следующую?
Anonymous Poll
60%
15
33%
16
46%
23
🔤🔤🔤🔤🔤🔤🔤🔤🔤🔤 🔤🔤🔤🔤🔤🔤

Сюда можно отправлять задачки для разбора. Если задача типовая, то ответ вы получите прямо в этом чате. Пожалуйста, прикрепляйте к задаче ссылку или её номер 🤗

Поддержать автора донатом 💵
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
🚩🚩 Разбор номера 11953 #kege по информатике #ЕГЭ23
Автор: PRO100 ЕГЭ
Уровень:
Средний

🚩 Условие задачи:
У исполнителя есть три команды:
A. Прибавить последнюю цифру
B. Добавить остаток от деления на 68
C. Возвести в квадрат

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

Сколько существует программ, для которых при исходном числе 2 результатом является число 680, при этом траектория вычислений содержит число 68 и не содержит числа 100?


👩‍💻 Код решения:
from functools import *
@lru_cache(None)
def F(a, b):
if a >= b or a == 100:
return a == b
R = []
if a % 10 != 0:
R.append(F(a + a % 10, b))
if a % 68 != 0:
R.append(F(a + a % 68, b))
R.append(F(a ** 2, b))
return sum(R)

print(F(2, 68) * F(68, 680))

# Ответ: 47997789947424


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

1⃣ from functools import *
Импортируются все функции из модуля functools.


2⃣ @lru_cache(None)
Декоратор @lru_cache(None) используется для кеширования результатов вызовов функции F, чтобы избежать повторных вычислений для одних и тех же аргументов.


3⃣ def F(a, b):
Объявляется функция F с параметрами a и b.


4⃣ if a >= b or a == 100:
Проверяется условие: если a больше или равно b, или a равно 100, то функция возвращает True.


5⃣ R = []
Создается пустой список R, в который будут добавляться результаты вычислений.


6⃣ if a % 10 != 0:
Если остаток от деления a на 10 не равен 0.


7⃣ R.append(F(a + a % 10, b))
Добавляется результат вызова F с аргументом a + a % 10 и b.


8⃣ if a % 68 != 0:
Если остаток от деления a на 68 не равен 0.


0⃣ R.append(F(a + a % 68, b))
Добавляется результат вызова F с аргументом a + a % 68 и b.


1⃣0⃣ R.append(F(a ** 2, b))
Добавляется результат вызова F с аргументом a в квадрате и b.


1⃣1⃣ return sum(R)
Функция возвращает сумму всех элементов в списке.


1⃣2⃣. print(F(2, 68) * F(68, 680))
Выводится произведение результатов вызовов F с аргументами (2, 68) и (68, 680).


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

Информатика ЕГЭ | чатик itpy 🧑‍💻
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
1175
Важный момент для решения 🚩 номера #useful

Доход: Типа операции "Продажа"
Прибыль: "Продажа" - "Поступление"

Интересен ли вам такой формат подачи материла?
❤️‍🔥 – Да, давайте делать еще
👾 – Нет, не информативно

Информатика ЕГЭ | itpy 👨‍💻
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
22642