#kege #yandex
#reshu #statgrad
#polyakov
#ЕГЭ1 #ЕГЭ10 #ЕГЭ19
#ЕГЭ2 #ЕГЭ11 #ЕГЭ20
#ЕГЭ3 #ЕГЭ12 #ЕГЭ21
#ЕГЭ4 #ЕГЭ13 #ЕГЭ22
#ЕГЭ5 #ЕГЭ14 #ЕГЭ23
#ЕГЭ6 #ЕГЭ15 #ЕГЭ24
#ЕГЭ7 #ЕГЭ16 #ЕГЭ25
#ЕГЭ8 #ЕГЭ17 #ЕГЭ26
#ЕГЭ9 #ЕГЭ18 #ЕГЭ27
Поддержать автора донатом
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
count = 0
for s in open('9.txt'):
M = sorted([int(x) for x in s.split()])
if len(M) != len(set(M)): # if M[-1] != M[-2]:
if M.count(M[-1]) == 1:
copied = [x for x in M if M.count(x) > 1]
if sum(copied) > M[-1]:
count += 1
print(count)
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
✏️ Полный разбор задачи в Notion
Заметили, что задачи 15 номера с отрезками вызывают сложности у студентов. Однако, РЕШУ ЕГЭ не рекомендует использовать метод перебора для их решения, что является категорически неверным. Мы представляем универсальный вариант решения, который может быть полезен.
В рамках обсуждения также рассмотрим задачу, в которой используется функция
all().def F(x, a1, a2):
P = 10 <= x <= 15
Q = 10 <= x <= 20
R = 5 <= x <= 15
A = a1 <= x <= a2
return (A <= P) == (Q <= R)
R = []
M = [x / 4 for x in range(5 * 4, 20 * 4)]
for a1 in M:
for a2 in M:
if all(F(x, a1, a2) for x in M):
R.append(a2 - a1)
print(min(R))
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Задачка 12 номера с сайте Решу ЕГЭ. Интересна она благодаря условию: "После выполнения программы получилась строка, содержащая только двойки".
for n in range(201, 1000):
s = '1' * n
while '111' in s or '222' in s:
s = s.replace('111', '22', 1)
s = s.replace('222', '1', 1)
if len(s) == s.count('2'):
print(n)
break
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
✏️ Полный разбор задачи в Notion
Да 7 номер ЕГЭ принято считать полностью письменной задачей, но мы предлагаем воспользоваться Питоном в качестве калькулятор и решить интересную задачу с Решу ЕГЭ.
I = (16 * 2 ** 23) / 32
I = I - (128 * 2**13)
I = I * 8
i = I / (2048 * 1536)
Colors = 2 ** i
print(f"Цветов использовано в палитре: {Colors}")
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
s = open('24.txt').readline()
s = s.split('U')
mini = 999999
for i in range(len(s)-108):
r = 'U'.join(s[i:i+109])
mini = min(mini, len(r))
print(mini + 2)Файлы к заданию: 24.txt
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
s = open('24.txt').readline().split('T')
maxi = 0
for i in range(len(s)-100):
r = 'T'.join(s[i:i+101])
maxi = max(maxi, len(r))
print(maxi)Файлы к заданию: 24.txt
Please open Telegram to view this post
VIEW IN TELEGRAM
down() опускает перо черепахи, позволяя ей рисовать на экране.import turtle as t
t.down()
t.forward(100)
t.done()
up() поднимает перо черепахи, останавливая рисование.import turtle as t
t.down()
t.forward(100)
t.up()
t.forward(50)
t.done()
dot(size, color) рисует точку заданного размера (size) и цвета (color) в текущей позиции черепахи.import turtle as t
t.dot(10, "red")
t.done()
screensize(width, height) устанавливает размеры экрана в пикселях. Это определяет размер доступной области для рисования.import turtle as t
t.screensize(800, 600)
t.done()
tracer(n, delay) управляет скоростью отрисовки черепахи. n задает количество шагов отрисовки, а delay - задержку между шагами.import turtle as t
t.tracer(3, 100)
t.done()
done() ожидает закрытия окна черепахи перед окончанием программы.import turtle as t
t.done()
Эти функции помогают управлять рисованием и настройками экрана при работе с библиотекой Turtle в Python.
Информатика ЕГЭ | itpy
Please open Telegram to view this post
VIEW IN TELEGRAM
👏8 8 6
This media is not supported in your browser
VIEW IN TELEGRAM
По заданным IP-адресу узла и маске определите адрес сети.
IP-адрес узла: 129.131.130.64
Маска: 255.255.192.0
Простейшая задача 13 номера с которой стоит начать изучение этих задач. Главная формула:
Адрес сети = Адрес узла & Маска сети
где & - это операция побитовой конъюнкции.
from ipaddress import *
net = ip_network('129.131.130.64/255.255.192.0', 0)
print(net) # 129.131.128.0/18
from ipaddress import * Импорт всех функций из модуля ipaddress для работы с сетевыми адресами.
net = ip_network('129.131.130.64/255.255.192.0', 0) Создание объекта сети net с заданным IP-адресом и маской подсети, причем последний аргумент указывает на коррекцию префикса.
print(net) Вывод объекта сети net.
# 129.131.128.0/18 Комментарий, указывающий на правильность адресации объекта сети: IP-адрес 129.131.128.0 с маской /18.
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Для узла с IP-адресом 224.128.112.142 адрес сети равен 224.128.96.0.
Чему равен третий слева байт маски? Ответ запишите в виде десятичного числа.
Маска сети имеет длину 32 бита и вид 1111..000 (сначала единицы, потом нули). Поэтому мы можем перебрать ее значения через for mask in range(32+1):
from ipaddress import *
for mask in range(32+1):
net = ip_network(f'224.128.112.142/{mask}', 0)
if str(net) == f'224.128.96.0/{mask}':
print(str(net.netmask).split('.')[2])
from ipaddress import * Импорт всех функций из модуля ipaddress для работы с сетевыми адресами.
Цикл for mask in range(32+1): Для перебора возможных значений маски сети от 0 до 32 (включительно).
net = ip_network(f'224.128.112.142/{mask}', 0) Создание объекта сети net с заданным IP-адресом и переменной маской подсети, где последний аргумент указывает на коррекцию префикса.
if str(net) == f'224.128.96.0/{mask}': Условие проверки соответствия адреса сети определенному значению.
print(str(net.netmask).split('.')[2]) Вывод третьего октета маски подсети из объекта сети net, если условие выполнено.
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Уровень: Базовый
Значение выражения 4**34 + 5 * 4**22 + 4**13 + 2 * 4**9 + 82 записали в системе счисления с основанием 16. Сколько разных цифр встречается в этой записи?
Функция hex() является встроенной функцией в Python, которая используется для преобразования целого числа в строку, содержащую его шестнадцатеричное представление.
print(len(set(hex(4**34 + 5*4**22 + 4**13 + 2*4**9 + 82)[2:])))
x = 4**34 + 5*4**22 + 4**13 + 2*4**9 + 82
s = []
while x > 0:
s.append(x % 16)
x //= 16
print(len(set(s)))
# Ответ: 6
x = 4**34 + 5*4**22 + 4**13 + 2*4**9 + 82В этой строке расчитывается значение переменной x с помощью сложных математических операций.
s = []Создается пустой список s, который будет использоваться для хранения результатов вычислений.
while x > 0:Запускается цикл while, который будет выполняться до тех пор, пока переменная x больше нуля.
s.append(x % 16)Добавляется остаток от деления переменной x на 16 в список s. Это делается для перевода числа в шестнадцатеричную систему счисления.
x //= 16Значение переменной x делится на 16 с использованием целочисленного деления, чтобы продолжить процесс перевода числа в шестнадцатеричную систему.
print(len(set(s)))Выводится длина множества уникальных значений списка s, что позволяет определить количество различных цифр, используемых в представлении числа x в шестнадцатеричной системе.
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Уровень: Базовый
Операнды арифметического выражения записаны в системах счисления с основаниями 13 и 18:
8x78y_13 + 79xy7_18
Определите значения x и y, при которых значение данного выражения будет наименьшим и кратно 9. Для найденных значений x и y вычислите частное от деления.
Строчку alphbet можно записать иначе:
from string import *
alphabet = digits + ascii_uppercase
alphabet = sorted('0123456789QWERTYUIOPASDFGHJKLZXCVBNM')
R = []
for x in alphabet[:13]:
for y in alphabet[:13]:
A = int(f'8{x}78{y}', 13)
B = int(f'79{x}{y}7', 18)
if (A + B) % 9 == 0:
R.append((A + B) // 9)
print(min(R))
# Ответ: 113024alphabet = sorted('0123456789QWERTYUIOPASDFGHJKLZXCVBNM')Создается отсортированный список alphabet, содержащий цифры от 0 до 9 и буквы английского алфавита в верхнем регистре.
R = []Создается пустой список R, в который будут добавляться результаты, удовлетворяющие условию задачи.
for x in alphabet[:13]:Запускается цикл for, перебирающий элементы alphabet до 13-го (не включительно) и присваивающий их переменной x.
for y in alphabet[:13]:Запускается вложенный цикл for, перебирающий элементы alphabet до 13-го (не включительно) и присваивающий их переменной y.
A = int(f'8{x}78{y}', 13)Формируется число A, которое получается из конкатенации строк, представляющих числа в строке, и преобразуется в десятичное число по основанию 13.
B = int(f'79{x}{y}7', 18)Формируется число B, которое получается аналогично число A, но преобразуется в десятичное число по основанию 18.
if (A + B) % 9 == 0:Проверяется условие, что сумма чисел A и B делится на 9 без остатка.
R.append((A + B) // 9)Если условие выполняется, результат деления суммы A и B на 9 добавляется в список R.
print(min(R))Выводится минимальное значение из списка R, которое является ответом на задачу.
Информатика ЕГЭ | itpy
Please open Telegram to view this post
VIEW IN TELEGRAM