Сколько четных цифр встречается в этой записи
1. В магазине продаются чашки пяти видов и блюдца трех видов. Сколькими способами можно выбрать себе чашку и блюдце?
Решение. Чашку можно выбрать пятью способами. Для каждого способа выбрать чашку есть 3 способа выбрать блюдце, потому что выбор блюдца не зависит от выбора чашки. То есть, всего 5 · 3 = 15 способов.
2. В магазине продаются чашки пяти видов, блюдца трех видов и ложки четырех видов. Сколькими способами можно выбрать себе а) чашку, блюдце и ложку; б) два разных предмета?
Решение. а) 5 · 3 · 4 = 60;
б) 5·3 + 3·4 + 5·4 = 15 + 12 + 20 = 47
3. Сколько существует четырехзначных чисел, в записи которых встречаются а) только четные цифры; б) по меньшей мере одна четная цифра?
Указание. а) Сколько цифр чётны? На каждом из 4 мест в числе может быть любая из этих цифр (кроме как на первом месте в числе не может стоять 0).
б) Проще посчитать количество всех четырёхзначных чисел и количество чисел, не удовлетворяющих условию задачи.
Ответ. a) 500
б) 525
Решение. а) 4 · 5 · 5 · 5 = 2 · 5 · 2 · 5 · 5 = 10 · 10 · 5 = 500
б) Четырёхзначных чисел всего 9999 — 1000 + 1 = 9000. Числа, не удовлетворяющие условию задачи, состоят только из нечётных цифр, то есть на каждом из 4 мест в числе должна стоять одна из 5 нечётных цифр (1, 3, 5, 7, 9). Выбрать первую цифру можно 5 способами, для каждого из которых есть по 5 способов выбрать вторую цифру, для каждого из которых есть по 5 способов выбрать третью цифру и по 5 способов выбрать четвёртую цифру, то есть всего 5 · 5 · 5 · 5 = 125 · 5 = (100 + 25) · 5 = 100 · 5 + 25 · 5 = 500 + 125 = 625 способов.
4. Монету бросают трижды. Сколько различных последовательностей орлов и решек может при этом получиться?
Решение. При каждом бросании может быть 2 варианта. То есть, при первом бросании 2 случая, на каждый из них по 2 подслучая (всего 2 · 2 = 4 подслучая), на каждый из подслучаев ещё по 2 подподслучая. Всего будет 2·2·2 = 8 вариантов.
5. Каждую клетку квадратной таблицы 2×2 покрасили в черный или белый цвет. Сколько существует различных раскрасок этой таблицы?
Решение. В каждой из 2х2 = 4 клеток может быть 2 варианта раскраски. То есть, есть 2 варианта раскраски первой клетки, на каждый из них есть по 2 подварианта раскраски второй клетки, на каждый из них по 2 подварианта для третьей и так же для четвёртой клетки. Всего 2·2·2·2 = 16 вариантов.
6. Алфавит племени Мумбо-Юмбо состоит из букв А и У. Словом считается любая последовательность, состоящая не более, чем из 5 букв. Сколько слов в словаре Мумбо-Юмбо?
Указание. Сложите количества таких последовательностей из 5 букв, из 4 букв, из 3 букв и так далее.
7. В футбольной команде 11 человек. Сколькими способами можно выбрать а) капитана и заместителя; б) двоих нападающих?
Ответ. а) 110
б) 55
Указание. В пункте а) есть разница в порядке выбора, а в пункте б) — нет. (См. задачи из дополнительного листка)
8. Сколькими способами можно поставить на шахматную доску а) черную и белую ладьи; б) черного и белого королей так, чтобы они не били друг друга? (Ладьи бьют все клетки на своей горизонтали и на своей вертикали, а короли бьют все соседние со своей клетки, в том числе по диагонали.)
Ответ. а) 3136
б) 3612
Указание. Поставьте на доску сначала одну фигуру. Сколькими способами это можно сделать? Затем для каждого из этих способов посчитайте, сколькими подспособами можно поставить на доску другую фигуру так, чтобы они не били друг друга.
Указание 2. В пункте б) рассмотрите 3 разных случая в зависимости от количества клеток, на которые можно поставить второго короля.
а) Поставим сначала чёрную ладью. Это можно сделать 8 · 8 = 64 способами. Чтобы белая ладья её не била, надо поставить её в другие горизонталь и вертикаль, то есть свободных для неё горизонталей будет 8 — 1 = 7, и вертикалей тоже 8 — 1 = 7. То есть, поставить белую ладью при уже поставленной чёрной можно 7 · 7 = 49 способами. Так как на каждый из 64 способов поставить чёрную ладью будет 49 способов поставить белую, то всего способов поставить обе будет 64 · 49 = 3136.
б) Поставим сначала чёрного короля. Сколько способов тогда останется для постановки белого? Рассмотрим разные случаи:
Если чёрный король стоит в углу доски, то белого нельзя ставить на 4 клетки, то есть можно поставить на одну из 8·8 — 4 = 60 клеток. Углов в доске 4, то есть таких случаев, когда чёрный король стоит в углу, а белый его не бьёт, 4 · 60 = 240.
Дальше, если чёрный король стоит с краю доски (не в углу), то белого нельзя ставить на 6 клеток, то есть можно ставить на 64 — 6 = 58 клеток. На каждой из 4 сторон доски есть 8 — 2 = 6 клеток, где чёрный король будет стоять с краю, но не в углу, то есть всего таких вариантов растановки обоих королей будет 4 · 6 · 58 = 1392.
Наконец, если чёрный король стоит на внутренней клетке доски (они образуют квадрат со стороной 8 — 2 = 6, поэтому внутренних клеток будет 6 · 6 = 36), то белого можно поставить на одну из 64 — 9 = 55 клеток. Всего вариантов расстановки, где чёрный король стоит на внутренней клетке, будет 36 · 55 = 1980.
Итак, всего подходящих вариантов будет 240 + 1392 + 1980 = (200 + 40) + (1400 — 8) + (2000 — 20) = 1600 + 2000 + (40 — 20 — 8) = 3600 + 12 = 3612
9. У Насти есть 4 разноцветных фишки. Сколькими способами она может выложить их в ряд?
10. Сколько существует пятизначных чисел, в записи которых встречаются только нечетные цифры, причем каждая цифра встречается ровно один раз?
Решение. Нечётных цифр всего пять: 1, 3, 5, 7, 9. На первом месте может стоять одна из 5 цифр, на втором — любая из пяти, кроме первой, то есть любая из 4 цифр, на третьем — любая из пяти, кроме двух уже использованных, то есть любая из 3 цифр, и так далее. Значит, всего 5 · 4 · 3 · 2 · 1 = 5! = 120 таких чисел.
11. Каких семизначных чисел больше — тех, в записи которых есть цифра 1, или тех, в записи которых ее нет?
Указание. Количество чисел с 1 можно не искать: легче найти количество чисел, где нет 1: они просто состоят из остальных цифр, и сравнить его с половиной от количества всех семизначных чисел. Не забудьте, что число не может начинаться с цифры 0.
- ЗАДАЧИ
- 5 класс
- Плюс-минус один
- Обратный ход
- Посчитай-ка
- Скобки и знаки
- Рыцари и лжецы
- Движение
- Движение (доп. задачи)
- Факториал
- Комбинаторика (доп. задачи)
- Математическая абака
- Комбинаторика
- Козы
- Переливания
- Предновогодний Оливье
- Математическая карусель
- Всюду идут дороги
- Разные задачи
- Разрезалки
- Круги Эйлера
- Принцесса или тигр
- Магические фигуры
- Двумя способами
- Конструкции
- ЗАДАЧИ
- ауд. П3 (рук. Л. А. Попов)
| Вы видите ошибку? Выделите её и нажмите Ctrl+Enter! | |
Посчитать четные и нечетные цифры числа
Определить, сколько в числе четных цифр, а сколько нечетных. Число вводится с клавиатуры.
Решение задачи на языке программирования Python
Если число делится без остатка на 2, его последняя цифра четная. Увеличиваем на 1 счетчик четных цифр even . Иначе последняя цифра числа нечетная, увеличиваем счетчик нечетных цифр odd .
В Python операцию нахождения остатка от деления выполняет знак % .
Чтобы избавиться от младшего уже учтенного разряда, число следует разделить нацело на 10. Деление нацело обозначается двумя слэшами // .
a = int(input()) even = 0 odd = 0 while a > 0: if a % 2 == 0: even += 1 else: odd += 1 a = a // 10 print(f'Even: , odd: ')
65439 Even: 2, odd: 3
Кроме чисто математического подхода в Python можно решить задачу «через строку». Мы не будем переводить введенное строковое представление числа к целочисленному типу, вместо этого переберем символы строки в цикле for . Каждый символ преобразуем к числу и проверим на четность.
a = input() even = 0 odd = 0 for i in a: if int(i) % 2 == 0: even += 1 else: odd += 1 print("Even: %d, odd: %d" % (even, odd))
Поскольку количество четных (как и нечетных) цифр ограничено, в программу можно включить что-то типа «базы данных» и проверять каждый символ на вхождение в нее.
a = input() digits = "02468" even = 0 odd = 0 for i in a: if i in digits: even += 1 else: odd += 1 print("Even: %d, odd: %d" % (even, odd))
Обратим внимание, что оператор in языка Python в заголовке цикла for обозначает иное, чем в заголовке условного оператора. Логическое выражение i in digits возвращает истину если i входит в состав digits . В иных случаях — ложь.
X Скрыть Наверх
Решение задач на Python
Сколько четных цифр встречается в этой записи
Задачи разных лет из реальных экзаменов, демо-вариантов, сборников задач и других источников
Задание 14. Информатика. Статград-22-3-2
Значение выражения $$ 3 \cdot 343^ + 5 \cdot 49^ + 7^ — 49 $$ записали в системе счисления с основанием \(7\) без незначащих нулей. Какая цифра чаще всего встречается в этой записи?
Задание 14. Информатика. Статград-22-4-1
Значение выражения $$ 7 \cdot 729^ + 6 \cdot 81^ + 3^ — 90 $$ записали в системе счисления с основанием \(9\) без незначащих нулей. Сколько чётных цифр встречается в этой записи?
Задание 14. Информатика. Статград-22-4-2
Значение выражения $$ 5 \cdot 729^ + 7 \cdot 81^ + 3^ — 171 $$ записали в системе счисления с основанием \(9\) без незначащих нулей. Сколько чётных цифр встречается в этой записи?
Задание 14. Информатика. Досрочный экзамен 2022
Значение выражения $$ 3 \cdot 16^ — 2 \cdot 8^ — 3 \cdot 4^ — 2^ — 2022 $$ записали в \(4\)-ричной системе счисления. Сколько троек в полученной записи?
Задание 14. Информатика. ЕГЭ-2022. 1 вариант
Значение арифметического выражения $$4 \cdot 625^ + 4 \cdot 125^ — 4 \cdot 25^ — 3 \cdot 5^ — 1960$$ записали в системе счисления с основанием \(5\). Определите количество значащих нулей в записи этого числа.
Задачи из реального экзамена ЕГЭ по информатике 20.06.22 (Часть 1)
Эта статья посвящена задачам из реального экзамена ЕГЭ по информатике 2022, которые были в этом году.
Посмотрим на сколько новый видеокурс по подготовке к ЕГЭ по информатике покрывает задачи из реального экзамена, а так же соответсвует последним веяньям моды.
На рисунке схема дорог Н-ского района изображена в виде графа, в таблице содержатся сведения о протяжённости каждой из этих дорог (в километрах).
Так как таблицу и схему рисовали независимо друг от друга, то нумерация населённых пунктов в таблице никак не связана с буквенными обозначениями на графе. Определите, какова сумма протяжённостей дорог из пункта A в пункт D и из пункта G в пункта С. В ответе запишите целое число.
Легко найти пункты G и С. Это две двойные точки и они связаны друг с другом. Получаем номера 4 и 5 (Здесь порядок может быть наооборот). Значит, мы знаем расстояние между G и С, оно равно 53.
Найдём точку В, она тройная и связана с тремя тройными точками. Это точка 2. От этой точки пойдём и найдём две тройные, связанные между собой. Это точки 6 и 7. Значит, это буквы A и Б (порядок может быть другим). Посмотрим, кто из них связан с точкой 4 или 5. Это точка 6. Значит точка 6 — это F. Точка 7 — это A. Седьмая точка связана с двойной точкой D. Точка D получается 1. Расстояние между семёркой и единицей равно 13.
Ответ получается 53 + 13 = 66.
Миша заполнял таблицу истинности логической функции F
¬(w → z) ∨ (x → y) ∨ ¬x
но успел заполнить лишь фрагмент из трёх различных её строк, даже не указав, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.
Определите, какому столбцу таблицы соответствует каждая из переменных w, x, y, z. В ответе напишите буквы w, x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала буква, соответствующая первому столбцу; затем буква, соответствующая второму столбцу, и т.д.) Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.
Пример. Функция F задана выражением ¬x \/ y, зависящим от двух переменных, а фрагмент таблицы имеет следующий вид.
В этом случае первому столбцу соответствует переменная y, а второму столбцу – переменная x. В ответе следует написать: yx.
Напишем шаблон, о котором было рассказано в видеокурсе по подготовке к ЕГЭ по информатике.
print('x', 'y', 'z', 'w') for x in range(0, 2): for y in range(0, 2): for w in range(0, 2): for z in range(0, 2): if not( not((not(w) or z)) or (not(x) or y) or not(x) ): print(x, y, z, w)
Получается такая таблица истинности:
x y z w
1 0 0 0
1 0 1 0
1 0 1 1
Каждый столбец имеет хотя бы один ноль, кроме последнего, поэтому последний столбец уходит переменной x, там все единицы.
Тогда все нули идут в предпоследний столбец, там будет переменная y.
У нас есть срочка с тремя нулями и одной единицей. Это может быть только последняя строчка, т.к. в первых двух строчках уже по две единицы. Значит, в первом столбце в последней ячейке ставим ноль. Получается w идёт в первый столбец, а переменная z во второй.
Ответ: wzyx
В файле приведён фрагмент базы данных «Продукты» о поставках товаров в магазины районов города. База данных состоит из трёх таблиц.
Таблица «Движение товаров» содержит записи о поставках товаров в магазины в течение первой декады июня 2021 г., а также информацию о проданных товарах. Поле Тип операции содержит значение Поступление или Продажа, а в соответствующее поле Количество упаковок, шт. занесена информация о том, сколько упаковок товара поступило в магазин или было продано в течение дня. Заголовок таблицы имеет следующий вид.
| ID операции |
Дата | ID магазина |
Артикул | Тип операции |
Количество упаковок, шт. |
Цена, руб./шт. |
Таблица «Товар» содержит информацию об основных характеристиках каждого товара. Заголовок таблицы имеет следующий вид.
| Артикул | Отдел | Наименование | Ед. изм. |
Количество в упаковке |
Поставщик |
Таблица «Магазин» содержит информацию о местонахождении магазинов. Заголовок таблицы имеет следующий вид.
| ID магазина |
Район | Адрес |
На рисунке приведена схема указанной базы данных.
Используя информацию из приведённой базы данных, опредилите, на сколько увеличилось количество упаковок всех видов макарон производителя «Макаронная фабрика», имеющихся в наличии в магазинах Первомайского района, за период с 1 по 8 июня включительно.
В ответе запишите только число.
Найдём артикулы всех макаронных изделий «Макаронной фабрики».
Открываем вкладку «Товар», кликаем в ячейку F1, выбираем кнопку на вкалдке «Главная» -> Сортировка и фильтр -> Фильтр.
Кнопка Фильтр может находится и на главной панели. Теперь можно отфильтровать товары только «Макаронной фабрики».
Получаются номера артикулов: 24, 25, 26, 27.
Аналогично отфильтровываем магазины Первомайского района. Получаются номера ID: M2, M4, M7, M8, M12, M13, M16.
После этого, переходим на вкладку «Движение товаров». Так же включаем фильтры и оставляем только нужные артиклы макаронных изделий и нужные ID магазинов.
Если мы ещё отфильтруем товары по типу «поступления», мы узнаем сколько макаронных изделий пришло в нужные нам магазины. После фильтрации остаётся только первое июня, значит, про дату пока не нужно думать.
Выделяем ячейки столбца Количество упаковок и внизу смотрим сумму этих ячеек. Получается 4970 упаковок.
Здесь нельзя пользоваться стандартной функцией СУММ, потому что она суммируем ещё и скрытые ячейки. А так мы получаем сумму выделенных ячеек.
Аналогично находим, сколько товаров было продано. В столбце «Тип операции» отфильтровываем по типу «Продажа».
Дата опять осталась только одна (1 июня). Получается, продали 3360 упаковок.
Следовательно, увеличилось на 4970 — 3360 = 1610 упаковок всех макаронных изделий в указанных магазинах за период с 1 по 8 июня включительно.
Ответ: 1610
По каналу связи передаются сообщения, содержащие только буквы из набора: А, З, К, Н, Ч. Для передачи используется двоичный код, удовлетворяющий условию Фано. Это условие обеспечивает возможность однозначной расшифровки закодированных сообщений. Кодовые слова для некоторых букв известны: Н — 1111, З — 110. Для трёх оставшихся букв А, К и Ч кодовые слова неизвестны. Какое количество двоичных знаков постребуется для кодирования слова КАЗАЧКА, если известно, что оно закодировано минимально возможным количеством двоичных знаков.
Расположим уже известные буквы на дереве Фано.
У нас остались три свободных места, если не продливать дерево: 0, 10, 1110.
Буква А встречается в слове КАЗАЧКА аж 3 раза. Значит, букве А присвоим код 0. Буква К встречается один раз, значит, ей код присвоим чуть побольше 10. Букве Ч достаётся код 1110. Это самый оптимальный способ распределить коды между оставшимися буквами.
Всего минимальная длина закодированного слова будет: 2 (К) + 1 (А) + 3 (З) + 1 (А) + 4 (Ч) + 2 (К) + 1 (А) = 14.
На вход алгоритма подаётся натуральное число N.
Алгоритм строит по нему новое число R следующим образом.
1. Строится двоичная запись числа N.
2. Далее эта запись обрабатывается по следующему правилу:
a) если сумма цифр в двоичной записи числа чётная, то к этой записи справа дописывается 0, а затем два левых разряда заменяются на 10;
б) если сумма цифр в двоичной записи числа нечётная, то к этой записи справа дописывается 1, а затем два левых разряда заменяются на 11.
Полученная таким образом запись является двоичной записью искомого числа R.
Например, для исходного числа 610 = 1102 результатом является число 10002 = 810, а для исходного числа 410 = 1002 результатом является число 11012 = 1310. Укажите минимальное число N, после обработки которого с помощью этого алгоритма получается число R, не меньшее, чем 16.
В ответе запишите это число в десятичной системе счисления.
for n in range(1, 1000): s=format(n, 'b') if s.count('1')%2==0: s = s + '0' s = '10' + s[2:] else: s = s + '1' s = '11' + s[2:] r=int(s, 2) if r>=16: print(n)
Здесь мы пишем программу, как было написано в уроке видеокурса ЕГЭ по информатике. Но, действительно, встречается и новый приём. Нужно изменить левые символы нашей строки s. Это можно сделать с помощью такой конструкции s[2:]. Таким образом, мы берём всю строку, кроме двух первых символов. Например, s=’football’, то s[2:] будет обозначать ‘otball’.
Повторим основные идеи такого подхода при решении пятого задания из ЕГЭ по информатике с помощью программирования. Перебираем числа от 1 до 999 с помощью цикла for. В этом диапазоне надеямся найти наш ответ. С помощью команды format() превращаем число в строку уже в двоичной системе. Сумма цифр в строке зависит только от количества единиц. Нули ничего не дают в сумму. Поэтому применяем функцию .count. Дальше всё делаем, как написано в условии задачи. Команда int(s, 2) превращает строку в двоичной системе в число опять в десятичной системе счисления.
Определите, при каком наименьшем введённом значении переменной s программа выведет число 8. Для Вашего удобства программа представлена на четырёх языках.
*На данном сайте программа будет приведена на двух языках.

Решать будем привычным способом — перебором. Здесь не нужно задействовать дополнительных особенных приёмов.
for i in range(-1000, 1000): s=i s = (s - 21) // 10 n = 1 while s>= 0: n = n * 2 s = s - n if n==8: print(i)
Для хранения сжатого произвольного растрового изображения размером 640 на 256 пикселей отведено 170 Кб памяти без учёта размера заголовка файла. Файл оригинального изображения больше сжатого на 35%. Для кодирования цвета каждого пикселя используется одинаковое количество бит, коды пикселей записываются в файл один за другим без промежутков. Какое максимальное количество цветов можно использовать в изображении ?
Пусть i — это количество бит в одном пикселе. Тогда i * 640 * 256 = 170Кб * 1,35. Находим i.
i = 170Кб * 1,35 / (640 * 256) = 11,475 бит.
Здесь округляем в меньшую сторону, потому что, если округлим в большую сторону не уместимся в 170 кб. Далее действуем по формуле:
N = 2 i = 2 11 = 2048 цветов.
Ответ: 2048
Определите количество пятизначных чисел, записанных в восьмеричной системе счисления, в записи которых ровно одна цифра 6, при этом никакая нечётная цифра не стоит рядом с цифрой 6.
Решим с помощью программы. Об этом мы говорили в видеокурсе ЕГЭ по информатике.
k=0 for x1 in '1234567': for x2 in '01234567': for x3 in '01234567': for x4 in '01234567': for x5 in '01234567': s = x1 + x2 + x3 + x4 + x5 if s.count('6')==1: if s.count('16')==0 and s.count('61')==0 and s.count('36')==0 and s.count('63')==0 and s.count('56')==0 and s.count('65')==0 and s.count('76')==0 and s.count('67')==0: k=k+1 print(k)
Ответ: 2961
Откройте файл электронной таблицы, содержащей в каждой строке четыре натуральных числа.
Определите количество строк таблицы, содержащих числа, для которых выполнены два условия:
— наибольшее из четырёх чисел меньше суммы трёх других;
— четыре числа можно разбить на две пары чисел с равными суммами.
В ответе запишите только число.
В столбцах E, F, G, H мы хотим видеть отсортированные числа из нашей строки. Для этого воспользуемся функцией НАИМЕНЬШИЙ().
В ячейку E1 напишем формулу =НАИМЕНЬШИЙ(A1:D1; 1). В начале пишем диапазон, где мы рассматриваем числа, второй аргумент говорит, что мы хотим выбрать самый маленький элемент. Для ячейки F1 пишем =НАИМЕНЬШИЙ(A1:D1; 2). Т.e. выбираем второй по минимальности элемент. И так далее делаем для четырёх чисел.
Распространяем новые столбцы на всё пространство (как это делать, можете посмотреть в видеоуроке по 9 заданию в видеокурсе). Так же можно подсветить каким-нибудь цветом новые столбцы.

Здесь достаточно проверить одну комбинацию: максимальное число + минимальное число = сумма двух средних чисел. По другому нельзя получить одинаковые суммы пар чисел, если все числа не одинаковые в четвёрке. Но у нас нет такой строчки, где все четыре числа одинаковых (это можно отдельно проверить с помощью команды ЕСЛИ).
В столбце I расставим единицы напротив тех строчек, которые подходят под условие задачи, иначе, поставим 0. В ячейке I1 напишем формулу:
Затем распространяем эту формулу на весь столбец и подсчитаем количество единиц в этом столбце.
Получается 104 строчки.
Задание 10
Текст произведения Льва Николаевича Толстого «Севастопольские рассказы» представлен в виде файлов различных форматов. Откройте один из файлов и определите, сколько раз встречается в тексте отдельное слово «солдаты» со строчной буквы. Другие формы этого слова учитывать не следует. В ответе запишите только число.
Открываем соответствующий файл в программе Word. На вкладке «Главная» находится кнопка «Найти«. Кликаем по чёрному треугольнику возле этой кнопки и выбираем «Расширенный поиск«.
На вкладке «Главная» находится кнопка «Найти«. Кликаем по чёрному треугольнику возле этой кнопки и выбираем «Расширенный поиск«.
Далее, нажимаем кнопку «Больше>>«.
Теперь у нас есть все инструменты, чтобы решить 10 задание из ЕГЭ по информатике 2022.
В поле «Найти» пишем наше слово «солдаты«. Галочку «Учитывать регистр» ставим, т.к. слово может быть только с маленькой буквы. Ставим галочку «Только слово целом«.
Нажимаем Найти в -> «Основной документ».
Получаем ответ 1.
При регистрации в компьютерной системе каждому объекту присваиватся идентификатор, состоящий из 252 символов и содержащий только десятичные цифры и символы из 1700-символьного специального алфавита. В базе данных для хранения каждого индетификатора отведено одинаковое и минимально возможное целое число байт. При этом используется посимвольное кодирование идентификаторов, все символы кодируются одинаковым и минимально возможным количеством бит.
Определите объём памяти (в Кбайт), необходимый для хранения 4096 идентификаторов. В ответе запишите только целое число — количество Кбайт.
Воспользуемся формулой для 11-ого задания из ЕГЭ по информатике.
Вместо N подставляем число 1700 + 10 = 1710 (1700 символов плюс 10 цифр). Тогда
Т.е. 11 бит точно хватит, чтобы закодировать 1710 символов.
В идентификатор всего 252 ячейки. Найдём сколько будет «весить» один идетификатор: 252 * 11 = 2772 бит. Узнаем, сколько байт потребуется для одного идентификатора 2772 / 8 = 347 байт (округлили в большую сторону, чтобы точно хватило).
У нас всего 4096 идентификаторов. Тогда нам потребуется 4096 * 347 = 1421312 байт. Переведём в Кб: 1421312 / 1024 = 1388 Кб.
Ответ: 1388
Задание 12
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.
А) заменить (v, w).
Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Например, выполнение команды
заменить (111, 27)
преобразует строку 05111150 в строку 0527150.
заменить (v, w) не меняет эту строку.
Б) нашлось (v).
Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.
ПОКА условие последовательность команд КОНЕЦ ПОКА
выполняется, пока условие истинно.
ЕСЛИ условие ТО команда1 ИНАЧЕ команда2 КОНЕЦ ЕСЛИ
выполняется команда1 (если условие истинно) или команда2 (если условие ложно).
Какая строка получится в результате применения приведённой ниже программы к строке, состоящей из 96 идущих подряд цифр 9? В ответе запишите полученную строку.
НАЧАЛО ПОКА нашлось(22222) ИЛИ нашлось(9999) ЕСЛИ нашлось(22222) ТО заменить(22222, 99) ИНАЧЕ заменить(9999, 2) КОНЕЦ ЕСЛИ КОЕНЦ ПОКА КОНЕЦ
Решение:
Решать будем, как было показано в видеокурсе.
s='9'*96 while '22222' in s or '9999' in s: if '22222' in s: s = s.replace('22222', '99', 1) else: s = s.replace('9999', '2', 1) print(s)
Задание 13
На рисунке представлена схема дороог, связывающих города А, Б, В, Г, Д, Е, Ж, И, К, Л. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой.
Определите количество различных путей ненулевой длины, которые начинаются и заканчиваются в городе Е, не содержат этот город в качестве промежуточного пункта и проходят через промежуточные города не более одного раза.

Решать будем примерно так же, как и классическую задачу. Основные идеи ни чем не отличаются.
В город Е входят города с числами: 16, 2 и 3. Значит, ответ получается 16 + 2 + 3 = 21.
Значение арифметического выражения
4*625 1920 + 4*125 1930 — 4*25 1940 — 3*5 1950 — 1960
записали в системе счисления с основанием 5. Определите количество значащих нулей в записи этого числа.
Решаем классическим способом с помощью программирования.
f=4*625**1920 + 4*125**1930 - 4*25**1940 - 3*5**1950 - 1960 s='' while f>0: s = s + str(f%5) f = f // 5 print(s.count('0'))
Ответ: 1891
Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m». Для какого наименьшего натурального числа А формула
(ДЕЛ(x, 2) → ¬ДЕЛ(x, 3)) ∨ (x + A >= 80)
тождественно истинна (т.е. принимает значение 1) при любом натуральном значении переменной x ?
Применим шаблон из видокурса ЕГЭ по информатике.
def D(n, m): if n%m==0: return True else: return False for A in range(1, 1000): k=0 for x in range(1, 10000): if (not(D(x, 2)) or not(D(x, 3))) or (x + A >= 80): k=k+1 if k==9999: print(A)
Здесь в начале пишем функцию D, которая олицетворяет функцию ДЕЛ. Потом перебираем различные натуральные значения A. Если функция для какого-то значения сработает 9999 раз, то будем считать, что такое значение A нам подходит.
Самое маленькое значение получается 74.
Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями:
F(n) = 1 при n 2 и при этом n чётное;
F(n) = F(n — 2) + 2n — 2, если n>2 и при этом n нечётное.
Чему равно значение функции F(34) ?
Здесь достаточно просто запрограммировать этот алгоритм.
def F(n): if nreturn 1 if n>2 and n%2==0: return F(n-1) + n - 1 if n>2 and n%2!=0: return F(n-2) + 2*n - 2 print(F(34))
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых остаток от деления хотя бы одного из элементов на 117 равен минимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумивается два идущих подряд элемента последовательности.
В начале найдём самый маленький элемент последовательности.
f=open('17.txt') mn=10**9 for s in f.readlines(): x = int(s) mn=min(mn, x) print(mn)
Получается минимальное число равно 8.
f=open('17.txt') k=0 mx=0 n1=int(f.readline()) for s in f.readlines(): n2=int(s) if n1%117==8 or n2%117==8: k=k+1 mx = max(mx, n1+n2) n1=n2 print(k, mx)
Ответ:
| 175 | 173738 |

Квадрат разлинован на N × N клеток (1
Отметим особым цветом те ячейки, которые «спрятаны» от движения Робота стенками.
Для этих ячеек будем составлять другие формулы, в отличии от обычных ячеек.
Цвет ячейки можно поменять, нажав на кнопку «Цвет заливки» на главной вкладке программы.
Т.к. Робот направляется из левой верхней ячейки, то мы сначала и напишем формулу для этой ячейки. Пишем для ячейки B22:
=МАКС( B21 ; A22 )+ B1
Робот в любую ячейку может прийти либо сверху, либо слева. Для подсчёта максимального количества монет, мы должны выбрать максимальное предыдущее значение. Это и делаем формула. Плюс Робот должен взять монеты с текущей клетки.
Распространим формулу на всё пространство, не трогая закрашенные клетки.
Получается такая картина:
В ячейки для первой закрашенной области, Робот может попасть только сверху! Поэтому пишем формулу для ячейки H25:
Распространяем формулу по всему закрашенному столбцу.
В ячейки для второй закрашенной области, Робот может попасть только слева! Поэтому пишем формулу для ячейки М39:
Распространяем формулу по всей закрашенной строчке.
В ячейке U23 напишем формулу:
И тоже распространим формулу на закрашенную часть.
В правом нижнем углу нашего рабочего пространства получается максимальное количество монет, которое может собрать Робот. В ячейке U41 получается число 2628.
Чтобы получить минимальную возможную сумму, в главной формуле функцию МАКС нужно заменить на МИН!
Удобно воспользоваться автоматической заменой через Ctrl+F.
Минимальная сумма равна 1659.
Ответ:
| 2628 | 1659 |
