Найти в Дзене
🌟 12 задание Информатика ЕГЭ задача № 8425 с сайта Полякова К.Ю. t.me/...inf Условие задачи 😳 ------------------------ На ленте исполнителя МТ в соседних ячейках записано двоичное представление целого положительного числа без ведущих нулей. Ячейки справа и слева от последовательности заполнены пустыми символами «λ». В начальный момент времени головка расположена в ближайшей справа от последовательности ячейке. Программа для исполнителя: λ   0   1 q0   λ, L, q1   -   - q1   λ, S, q1   1,L, q1   0,L, q1 Команды движения каретки: L – влево, R – вправо, N – отсутствие сдвига, S – стоп. После выполнения программы на ленте оказалась двоичная запись числа 156. Определите десятичное значение наибольшего числа, меньшего, чем 10000, которое могло быть записано на ленте до начала работы программы. Код на python: for i in range(9999, 0, -1):    s = bin(i)[2:]    # инвертируем строку    s2 = ''.join('1' if t == '0' else '0' for t in s)    if int(s2, 2) == 156:    print(i)    break Код на PascalABC.NET: RAnge(9999,1,-1) .Where(s->dec(bin(s).Select(t->t='0'?'1':'0').joinToString,2) = 156) .first .print; ✨Ответ: 8035
1 месяц назад
Задача №15 ЕГЭ по информатике по мотивам сборника Крылова 2026 ********************************************************************************************************** (№ 8409) (И. Карпачёв) На числовой прямой дан отрезок A = [4; 82]; B – множество всех натуральных делителей числа 211, отличных от единицы и от самого числа 211; C – множество всех натуральных делителей некоторого натурального числа y, отличных от единицы и от самого числа y (число y таково, что множество C непустое). Укажите значение y, имеющее максимальное количество делителей, для которого выражение: ((x ∈ B) ∨ ¬(x ∈ A)) → ¬(x ∈ C) тождественно истинно (т.е. принимает значение 1 при любом натуральном значении переменной х)? ********************************************************************************************************** Решение на современном pascalabc.net ## uses school; function f(x,y:integer):boolean; begin  var a:=x in range(4,82);  var b:=x in 211.divisors?[1:^1];  var c:=x in y.divisors?[1:^1];  if not y.IsPrime then   result:=(b or not a)<=(not c)  else   result:=false; end; (1..10000) .Where(y -> ((1..1000).All(x->f(x,y)))) .Select(y->(y, y.divisors.count)) .MaxBy(y->y[1]) .Print; Решение на python: def allDivs( x ):  divs = []  d = 2  while d*d <= x:   if x % d == 0:    divs.append( d )    if x // d > d:    divs.append( x//d )   d += 1  return sorted(divs) def f(x,y):  a = 4<=x<=82  b = x in allDivs(211)  c = x in allDivs(y)  if len(allDivs(y))>0:   return (b or (not a)) <=(not c) q = [] for y in range(1,10000):  if all(f(x,y) for x in range(1,1000)):   q+=[(y,len(allDivs(y)))] q.sort(key = lambda x: (x[1])) print(q[-1]) @Информатика Сегодня
244 читали · 3 месяца назад
📎 24 задание на обработку строк решаем через регулярные выражения (№ 5645) (П. Финкель) Текстовый файл 24-230.txt состоит не более чем из 10^6 символов и содержит буквы английского алфавита и цифры. Определите максимальное число в этом файле, ограниченное двумя парами символов ZZ и удовлетворяющее маске «8???54???22», где символ ? обозначает любую цифру. Пример такого числа: 81235412322. Найдите произведение нечётных цифр найденного числа. #regex #регулярки #findall Решение на Python: import re s=open('24-230.txt').readline() l=re.findall(r'ZZ8\d{3}54\d{3}22ZZ',s) t = (max(int(x[2:-2]) for x in l)) p = 1 for x in str(t):   if x in '13579':    p*=int(x) print(p) Решение на pascalabc.net ## ReadAllText('24-230.txt') .MatchValues('ZZ8\d{3}54\d{3}22ZZ') .Select(t->t[3:^2].ToBigInteger) .max.ToString .Where(t->t in '13579') .Select(t->StrToInt(t)) .Product .Print;
9 месяцев назад
Решаем 24.4917 задание через регулярные выражения (№ 4917) Текстовый файл 24-191.txt содержит строку из заглавных латинских букв, всего не более чем из 10^6 символов. Определите количество подстрок длиной не менее 20 символов, которые начинаются буквой A, заканчиваются буквой B и не содержат других букв A и B, кроме первой и последней. Pascal: ## ReadAllText('24-191.txt') .MatchValues('[A][C-Z]+[B]') .Select(s -> s.Length) .count(t -> t >= 20) .print; Python import re k=0 s=open('24-191.txt').readline() r=re.findall(r'[A][C-Z]+[B]',s) print(len([x for x in r if len(x)>=20]))
9 месяцев назад
finditer() vs findall() Если вы осваиваете регулярные выражения, то в какой-то момент у вас возникнем вопрос: "В чем разница между функциями finditer() и findall()". Простой пример на python иллюстрирует эту разницу: import re s = 'ABBCAABAAAABD' r = re.finditer(r'(AA)+',s) r2 = re.findall(r'(AA)+',s) for x in r:   print(x[0]) print('---') for x in r2:   print(x)
10 месяцев назад
Основные функции библиотеки school; ## uses school; println('{Системы счисления}'); var x:=Random(100); println(x); bin(x).Println; oct(x).Println; hex(x).Println; ToBase(x,28).Println; //Перевод в 28-ю систему счисления Dec('28FDN6',31).println; //Перевод из 31-й системы счисления x.Digits.Println;  //Список цифр числа в десятичной системе счисления x.Digits(6).Println;  //Список цифр числа в 6-ной системе счисления println('{Простые числа}'); x.isPrime.Println; Primes(x).Println; //Простые числа на интервале [2;x] (Решето Эратосфена) Primes(100,100000000).count.Print; //Кол-во простых числа на интервале [2;x] PrimeDivisorsCount(x).Println; //Количество простых делителей числа x println('{НОД НОК}'); НОД(1100,1260).Println; GCD(1100,1260).Println; НОК(25,30).Println; LCM(25,30).Println; println('{Факторизация и делители}'); x.Divisors.Println; //Все делители числа x.Factorize.Println; //Разложение числа на простые множители (x.Divisors.count-2).Println; //Кол-во нетривиальных делителй x.DivisorsCount.Println;   //Кол-во делителй x.Divs(5).println;   //Делится ли на 5 x.DivsAll(|2,5,7|).Println;  //Возвращает True если целое делится на все значения x.DivsAny(|2,5,7|).Println;  //Возвращает True если целое делится на одно из значений
10 месяцев назад
Задача 24 ЕГЭ Информатика. Основная волна экзамена 2023 (№ 6676) (ЕГЭ-2023) Текстовый файл 24-264.txt состоит не более чем из 106 символов и содержит только заглавные буквы латинского алфавита и цифры. Определите максимальную длину подстроки, которая может являться записью числа в шестнадцатеричной системе счисления. Видео разбор задания: dzen.ru/...a71
143 читали · 2 года назад
(№ 7075) (PRO100-ЕГЭ) В терминологии сетей TCP/IP маской сети называют двоичное число, которое показывает, какая часть IP-адреса узла сети относится к адресу сети, а какая – к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и маске сети. Сеть задана IP-адресом 192.168.32.160 и маской сети 255.255.255.240. Сколько в этой сети IP-адресов, для которых количество нулей в двоичной записи IP-адреса больше 21? Решение на pascalabc.net и python:
2 года назад
(№ 7006) (А. Минак) В терминологии сетей TCP/IP маской сети называют двоичное число, которое показывает, какая часть IP-адреса узла сети относится к адресу сети, а какая - к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и маске сети. Сеть задана IP-адресом 216.130.64.0 и маской сети 255.255.192.0. Сколько в этой сети IP-адресов, которые не имеют ни одного байта с нечётным значением? IP-адрес сети учитывать не следует. Решение на pascalabc.net and python:
2 года назад
14 номер ЕГЭ по информатике. Основная волна экзамена 2023. (№ 6744) (ЕГЭ-2023) Операнды арифметического выражения записаны в системе счисления с основанием 23:   7x3859623 + 14х3623 + 61x723 В записи чисел переменной x обозначена неизвестная цифра из алфавита 23-ричной системы счисления. Определите наименьшее значение x, при котором значение данного арифметического выражения кратно 22. Для найденного значения x вычислите частное от деления значения арифметического выражения на 22 и укажите его в ответе в десятичной системе счисления. Основание системы счисления указывать не нужно. Решение на PascalABC.NET: ## uses school; {1 способ решения} var s := ('0'..'9').JoinToString + ('A'..'M').JoinToString; s.Select(x -> Dec($'7{x}38596', 23) +    Dec($'14{x}36', 23) +    Dec($'61{x}7', 23)). Where(x -> x mod 22 = 0). Select(x -> x div 22).Take(1).println; {2 способ решения} var (sum, p) := (0bi, 23bi); for var x := 0 to 22 do begin  sum := 7 * p ** 6 + x * p ** 5 + 3 * p ** 4 + 8 * p ** 3 + 5 * p ** 2 + 9 * p ** 1 + 6 +    1 * p ** 4 + 4 * p ** 3 + x * p ** 2 + 3 * p + 6 +    6 * p ** 3 + 1 * p ** 2 + x * p + 7;  if sum mod 22 = 0 then   print(sum div 22); end; Решение на python: s = '0123456789' for i in range(10,23):  s+=chr(55+i) for x in s:  a = int(f'7{x}38596', 23) + int(f'14{x}36', 23) + int(f'61{x}7', 23)  if a % 22 == 0:   print(a // 22)
223 читали · 2 года назад
№23 решаем задачу 6024 с сайта Полякова КЕГЭ . Рекурсия Условия задачи: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (И. Карпачев) Исполнитель Калькулятор преобразует число, записанное на экране. У исполнителя есть три команды, которым присвоены коды: A. Прибавь 2 B. Умножь на 2 С. Умножь на 4 Первая команда увеличивает число на 2 раза, вторая – в 2 раза, третья – в 4 раза. Программа для исполнителя – это последовательность команд. Сколько существует программ, для которых при исходном числе 1 результатом будет являться число 24, при этом траектория вычисления не содержит подпоследовательность команд BACA.Траектория вычисления программы – это последовательности результатов выполнения всех команд. Например, для программы BCA при исходном числе 4 траектория будет состоять из чисел 8, 32, 34. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3 года назад
Задача №08.6132 (Комбинаторика) *Определите количество семизначных чисел, записанных в девятеричной системе счисления, в записи которых ровно одна цифра 8 и ровно четыре нечётные цифры.
114 читали · 3 года назад