Информатика | Илья Андрианов | itpy 🧑‍💻
1.03K subscribers
265 photos
21 videos
19 files
633 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
🚩 Разбор номера 58468 #reshu по информатике #ЕГЭ1

✏️ Полный разбор задачи в Notion

Тенденции показывают, что с каждым годом экзамен все больше смещается в сторону программирования. Мы не отстаем от трендов и публикуем разбор именно этого 1 номера, так как он идеально решается через способ, который придумали наши коллеги с канала PRO100 ЕГЭ

from itertools import permutations

table = '14 17 18 23 25 26 32 34 38 41 43 47 48 52 56 58 62 65 71 74 81 83 84 85'
graph = 'АБ БА АИ ИА ИБ БИ ИЖ ЖИ БЖ ЖБ БВ ВБ ВЖ ЖВ ВГ ГВ ЖЕ ЕЖ ЕГ ГЕ ДГ ГД ЕД ДЕ'

for per in permutations('АБВГДЖИЕ'):
new_table = table
for i in range(1, 8+1):
new_table = new_table.replace(str(i), per[i-1])
if set(new_table.split()) == set(graph.split()):
print('1 2 3 4 5 6 7 8')
print(*per)


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

Информатика ЕГЭ | чатик itpy 🧑‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥9👍541
This media is not supported in your browser
VIEW IN TELEGRAM
🚩 Разбор номера 17620 #kege по информатике #ЕГЭ1
Автор: Основная волна 19.06.24
Уровень: Базовый


🚩 Условие задачи:
Определите, какова сумма протяжённостей дорог из пункта F в пункт B и из пункта E в пункт D.


🚩 Теоретическая справка:
Данный код позволяет нам в универсальном случае определить последовательность вершин графа. И если знаем вершины, то не сложно найти длины и сумму длин!


👩‍💻 Код решения:
from itertools import permutations

table = '12 15 16 21 23 24 32 36 37 42 47 51 56 61 63 65 73 74'
graph = 'AB BA AF FA FB BF FE EF BD DB ED DE EC CE DG GD CG GC'

for per in permutations('ABCDEFG'):
new_table = table
for i in range(1, 7+1):
new_table = new_table.replace(str(i), per[i-1])
if set(new_table.split()) == set(graph.split()):
print('1 2 3 4 5 6 7')
print(*per)


👩‍💻 Результат:
# 1 2 3 4 5 6 7
# B D E G A F C

# FB = 53, ED = 2, => 55

# 1 2 3 4 5 6 7
# F E D C A B G

# ED = 53, FB = 2, => 55


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

1⃣ from itertools import permutations
Импортируем функцию permutations из модуля itertools для генерации всех возможных перестановок элементов.


2⃣ table = '12 15 16 21 23 24 32 36 37 42 47 51 56 61 63 65 73 74'
Определяем строку 'table', представляющую набор чисел, разделенных пробелами, которые описывают соединения в графе.


3⃣ graph = 'AB BA AF FA FB BF FE EF BD DB ED DE EC CE DG GD CG GC'
Определяем строку 'graph', которая описывает возможные связи между буквами A, B, C, D, E, F, G в графе.


4⃣ for per in permutations('ABCDEFG'):
Запускаем цикл, перебирающий все возможные перестановки букв A, B, C, D, E, F, G.


5⃣ new_table = table
Создаем копию строки 'table', чтобы постепенно заменять числа на соответствующие буквы из текущей перестановки.


6⃣ for i in range(1, 7 + 1):
Запускаем вложенный цикл, который проходит по всем числам от 1 до 7.


7⃣ new_table = new_table.replace(str(i), per[i - 1])
Заменяем каждое число в 'new_table' на соответствующую букву из текущей перестановки 'per', используя индексы.


8⃣ if set(new_table.split()) == set(graph.split()):
Проверяем, совпадает ли множество уникальных элементов в 'new_table' с множеством уникальных элементов в 'graph'.


0⃣ print('1 2 3 4 5 6 7')
Если множества совпадают, выводим строку '1 2 3 4 5 6 7', что означает, что найдено подходящее соответствие.


🔟 print(*per)
Печатаем текущее соответствие букв из перестановки, используя распаковку для форматированного вывода.


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

Информатика ЕГЭ | чатик itpy 🧑‍💻
Поддержать автора донатом 💵
Please open Telegram to view this post
VIEW IN TELEGRAM
833
This media is not supported in your browser
VIEW IN TELEGRAM
🚩 Разбор номера 17855 #kege по информатике #ЕГЭ1
Автор: Демоверсия 2025
Уровень: Базовый


🚩 Условие задачи:
Определите, какова сумма протяжённостей дорог из пункта D в пункт G и из пункта A в пункт C.


🚩 Теоретическая справка:
Представленный код решения выполняет тривиальный перевод всех вариантов, таким образом, в любой задаче мы сможем найти сопоставление вершин графа. В данном случае нужно заметить, что длина DG получилась равной 8, а длина AC — 30.


👩‍💻 Код решения:
from itertools import permutations

table = '14 15 17 24 26 35 36 37 41 42 51 53 56 62 63 65 71 73'
graph = 'AB BA AC CA EC CE CG GC EF FE FG GF FD DF DG GD DB BD'

for per in permutations('ABCDEFG'):
new_table = table
for i in range(1, 7+1):
new_table = new_table.replace(str(i), per[i-1])
if set(new_table.split()) == set(graph.split()):
print('1 2 3 4 5 6 7')
print(*per)

# 1 2 3 4 5 6 7
# C B F A G D E

# Ответ: 30 + 8 = 38



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

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


2⃣ table = '14 15 17 24 26 35 36 37 41 42 51 53 56 62 63 65 71 73'
Задаем строку table, которая содержит пары чисел, разделенных пробелами.


3⃣ graph = 'AB BA AC CA EC CE CG GC EF FE FG GF FD DF DG GD DB BD'
Задаем строку graph, которая содержит пары букв, разделенных пробелами, представляющих связи в графе.


4⃣ for per in permutations('ABCDEFG'):
Проходим по всем возможным перестановкам букв 'A', 'B', 'C', 'D', 'E', 'F', 'G'.


5⃣ new_table = table
Создаем копию строки table, которая будет изменяться в процессе.


6⃣ for i in range(1, 7+1):
Проходим по числам от 1 до 7 включительно (индексам элементов строки per).


7⃣ new_table = new_table.replace(str(i), per[i-1])
Заменяем все вхождения числа i в строке new_table на соответствующую букву перестановки per.


8⃣ if set(new_table.split()) == set(graph.split()):
Сравниваем множества пар из new_table и graph. Если они совпадают, то:


0⃣ print('1 2 3 4 5 6 7')
Печатаем строку с числами от 1 до 7.


🔟 print(*per)
Печатаем текущую перестановку букв 'A', 'B', 'C', 'D', 'E', 'F', 'G', разделяя их пробелами.


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

Информатика ЕГЭ | чатик itpy 🧑‍💻
Поддержать автора донатом 💵
Please open Telegram to view this post
VIEW IN TELEGRAM
3654