1.
1 задание. Демо ЕГЭ 2021 информатика, ФИПИ:
На рисунке схема дорог Н-ского района изображена в виде графа, в таблице содержатся сведения о протяжённости каждой из этих дорог (в километрах).
Так как таблицу и схему рисовали независимо друг от друга, то нумерация населённых пунктов в таблице никак не связана с буквенными обозначениями на графе. Определите, какова протяжённость дороги из пункта Г в пункт Ж. В ответе запишите целое число – так, как оно указано в таблице.
Ответ: 9
Видео
2.
2 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Миша заполнял таблицу истинности функции
(x ∨ y) ∧ ¬(y ≡ z) ∧ ¬w
но успел заполнить лишь фрагмент из трёх различных её строк, даже не указав, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.
Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных w, x, y, z.
Перем.1 | Перем.2 | Перем.3 | Перем.4 | Функция |
??? | ??? | ??? | ??? | F |
1 | 1 | 1 | ||
0 | 1 | 0 | 1 | |
1 | 1 | 0 | 1 |
В ответе запишите буквы в том порядке, в котором идут соответствующие им столбцы.
3.
3 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Ниже представлены два фрагмента таблиц из базы данных о жителях микрорайона. Каждая строка таблицы 2 содержит информацию о ребёнке и об одном из его родителей. Информация представлена значением поля ID в соответствующей строке таблицы 1. Определите на основании приведённых данных ID женщины, ставшей матерью в наиболее молодом возрасте. При вычислении ответа учитывайте только информацию из приведённых фрагментов таблиц. Ниже представлены два фрагмента таблиц из базы данных о жителях микрорайона. Каждая строка таблицы 2 содержит информацию о ребёнке и об одном из его родителей. Информация представлена значением поля ID в соответствующей строке таблицы 1. Определите на основании приведённых данных ID женщины, ставшей матерью в наиболее молодом возрасте. При вычислении ответа учитывайте только информацию из приведённых фрагментов таблиц.
Ответ: 64
4.
4 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Для кодирования некоторой последовательности, состоящей из букв Л, М, Н, П, Р, решили использовать неравномерный двоичный код, удовлетворяющий условию, что никакое кодовое слово не является началом другого кодового слова. Это условие обеспечивает возможность однозначной расшифровки закодированных сообщений. Для букв Л, М, Н использовали соответственно кодовые слова 00, 01, 11. Для двух оставшихся букв – П и Р – кодовые слова неизвестны.
Укажите кратчайшее возможное кодовое слово для буквы П, при котором код будет удовлетворять указанному условию. Если таких кодов несколько, укажите код с наименьшим числовым значением.
5.
5 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится двоичная запись числа N.
2. К этой записи дописываются справа ещё два разряда по следующему правилу:
а) складываются все цифры двоичной записи числа N, и остаток от деления суммы на 2 дописывается в конец числа (справа).
Например, запись 11100 преобразуется в запись 111001;
б) над этой записью производятся те же действия – справа дописывается остаток от деления суммы её цифр на 2.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R.
Укажите такое наименьшее число N, для которого результат работы данного алгоритма больше числа 77. В ответе это число запишите в десятичной системе счисления.
Ответ: 19
Разбор
подобного
задания смотрите на видео:
Видео
✍ Решение:
- Заметим, что после второго пункта условия задачи получаются только четные числа (т.к. если число в двоичной системе заканчивается на 0, то оно четное). Таким образом, нас будут интересовать только четные числа.
- Наименьшим возможным числом, превышающим 77, является число 78. С ним и будем работать.
- Переведем 78 в двоичную систему счисления. Используя компьютер это можно сделать с помощью программистского режима калькулятора. Либо в консоли интерпретатора Python набрать bin(78). Получим:
1001110
N
. Значит, необходимое нам двоичное число — это 10011. После первого пункта задачи к данному числу должна была добавиться справа единица, так и есть: 100111. А затем добавляется 0: 1001110. Соответственно, оно подходит.int('10011',2)
Ответ: 19
6.
6 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Определите, при каком наименьшем введённом значении переменной s программа выведет число 64. Для Вашего удобства программа представлена на четырёх языках программирования.
Паскаль:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
var s, n: integer; begin readln(s); n := 1; while s < 51 do begin s := s + 5; n := n * 2 end; writeln(n) end. |
Алгоритмический язык:
алг нач цел n, s ввод s n := 1 нц пока s < 51 s := s + 5 n := n * 2 кц вывод n кон |
Python:
s = int(input()) n = 1 while s < 51: s = s + 5 n = n * 2 print(n) |
С++:
#include <iostream> using namespace std; int main() { int s, n; cin >> s; n = 1 ; while (s < 51) { s = s + 5; n = n * 2; } cout << n << endl; return 0; } |
✍ Решение:
-
✎ Способ 1 (программный):
- Поскольку в цикле
s
увеличивается, а по условию задания следует найти наименьшее значениеs
, то можно начать сs=1
, постоянно увеличивая значениеs
на единицу во внешнем цикле. - Важно для внешнего цикла использовать другую переменную, т.к. во внутреннем цикле переменная
s
меняется, а нам следует каждый шаг внешнего цикла сохранить предыдущее значение s, увеличив его всего на 1. Используем переменнуюS1
для этих целей.
Pascalabc.net:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
begin var s1 := 1; while true do // внешний цикл, бесконечный begin var s := s1; // --- код из условия задания --- // var n := 1; while s < 51 do begin s := s + 5; n := n * 2 end; if n = 64 then // если найдено, то выводим соответствующее s begin print(s1); break; // выход из бесконечного цикла end; s1 := s1 + 1; // end; end. |
Пояснение:
Бейсик: |
Python:
s1 = 1 while True: # внешний цикл, бесконечный s = s1 # --- код из условия задания --- n = 1 while s < 51: s = s + 5 n = n * 2 # --- конец кода из условия задания --- if n == 64: print(s1) break s1 += 1 |
С++: |
Ответ: 21
7.
7 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Для хранения произвольного растрового изображения размером 128×320 пикселей отведено 20 Кбайт памяти без учёта размера заголовка файла. Для кодирования цвета каждого пикселя используется одинаковое количество бит, коды пикселей записываются в файл один за другим без промежутков.
Какое максимальное количество цветов можно использовать в изображении?
Ответ: 16
Разбор
подобного
задания смотрите на видео:
🎦 Видео
8.
8 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Игорь составляет таблицу кодовых слов для передачи сообщений, каждому сообщению соответствует своё кодовое слово. В качестве кодовых слов Игорь использует трёхбуквенные слова, в которых могут быть только буквы Ш, К, О, Л, А, причём буква К появляется ровно 1 раз. Каждая из других допустимых букв может встречаться в кодовом слове любое количество раз или не встречаться совсем. Сколько различных кодовых слов может использовать Игорь?
Ответ: 48
✍ Решение:
-
✎ Решение с использованием программирования:
PascalABC.net:
|
||
Python:
|
||
С++: |
Разбор подобного задания смотрите на видео:
🎦 Видео
9.
9 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Задание выполняется с использованием прилагаемых файлов
Откройте файл электронной таблицы, содержащей вещественные числа – результаты ежечасного измерения температуры воздуха на протяжении трёх месяцев.
Найдите разность между максимальным значением температуры и её средним арифметическим значением.
В ответе запишите только целую часть получившегося числа.
10.
10 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Задание выполняется с использованием прилагаемых файлов
С помощью текстового редактора определите, сколько раз, не считая сносок, встречается слово «долг» или «Долг» в тексте романа в стихах А.С. Пушкина «Евгений Онегин». Другие формы слова «долг», такие как «долги», «долгами» и т.д., учитывать не следует. В ответе укажите только число.
11.
11 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
При регистрации в компьютерной системе каждому объекту сопоставляется идентификатор, состоящий из 15 символов и содержащий только символы из 8-символьного набора: А, В, C, D, Е, F, G, H. В базе данных для хранения сведений о каждом объекте отведено одинаковое и минимально возможное целое число байт. При этом используют посимвольное кодирование идентификаторов, все символы кодируют одинаковым и минимально возможным количеством бит. Кроме собственно идентификатора, для каждого объекта в системе хранятся дополнительные сведения, для чего отведено 24 байта на один объект.
Определите объём памяти (в байтах), необходимый для хранения сведений о 20 объектах. В ответе запишите только целое число – количество байт.
Ответ: 600
Разбор
подобного
задания смотрите в видео:
🎦 Видео
12.
12 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.
А) заменить (v, w).
Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Например, выполнение команды заменить (111, 27) преобразует строку 05111150 в строку 0527150.Если в строке нет вхождений цепочки v, то выполнение команды заменить (v, w) не меняет эту строку.
Б) нашлось (v).
Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.
…
Какая строка получится в результате применения приведённой ниже программы к строке, состоящей из 70 идущих подряд цифр 8? В ответе запишите полученную строку.
НАЧАЛО ПОКА нашлось (2222) ИЛИ нашлось (8888) ЕСЛИ нашлось (2222) ТО заменить (2222, 88) ИНАЧЕ заменить (8888, 22) КОНЕЦ ЕСЛИ КОНЕЦ ПОКА КОНЕЦ
-
✎ Решение с использованием программирования:
PascalABC.NET:
Вариант 1:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
begin var s := '8'*70; var p2 := Pos('2222',s); var p8 := Pos('8888',s); while (p2 > 0) or (p8 > 0) do begin if p2 > 0 then begin Delete( s, p2, 4 ); Insert( '88', s, p2 ); end else begin Delete( s, p8, 4 ); Insert( '22', s, p8 ); end; p2 := Pos('2222',s); p8 := Pos('8888',s); end; write(s); end. |
Вариант 2:
1 2 3 4 5 6 7 8 9 10 11 |
begin var s: string := '8' * 70; while (s.contains('2222')) or (s.contains('8888')) do begin if (s.contains('2222')) then s := s.replace('2222', '88') else s := s.replace('8888', '22'); end; writeln(s); end. |
Питон:
1 2 3 4 5 6 7 |
s = 70 * '8' while "2222" in s or "8888" in s: if "2222" in s: s = s.replace( "2222", "88", 1 ) else: s = s.replace( "8888", "22", 1 ) print(s) |
Разбор подобного задания смотрите в видео:
🎦 Видео
13.
13 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
На рисунке представлена схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, З, И, К, Л, М. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой.
Сколько существует различных путей из города А в город М, проходящих через город В?
Ответ: 24
Разбор
подобного
задания смотрите в видео:
🎦 Видео
14.
14 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Значение арифметического выражения: 497 + 721 – 7 – записали в системе счисления с основанием 7. Сколько цифр 6 содержится в этой записи?
Ответ: 13
✍ Решение:
✎ Решение с использованием программирования:
PascalABC.NET:
begin var k := 0; var x: Biginteger; x := Biginteger.Pow(49, 7) + Biginteger.Pow(7, 21) - 7; // в получившемся числе рассматриваем каждую цифру в 7-й системе сч. while x > 0 do begin if x mod 7 = 6 then k += 1; // если цифра = 6, то считаем ее x := x div 7; // убираем разряд числа в 7-й системе сч. end; println(k); end. |
Python:
x = 49**7 + 7**21 - 7 k = 0 # в получившемся числе рассматриваем каждую цифру в 7-й системе сч. while x: if x % 7 == 6: # если цифра = 6, то считаем ее k += 1 x //= 7 # убираем разряд числа в 7-й системе сч. print( k ) |
С++: |
Ответ: 13
Разбор подобного задания смотрите в видео:
🎦 Видео
15.
15 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Обозначим через ДЕЛ(n, m)
утверждение «натуральное число n делится без остатка на натуральное число m».
Для какого наибольшего натурального числа А формула
¬ДЕЛ(x, А) → (ДЕЛ(x, 6) → ¬ДЕЛ(x, 9))
тождественно истинна (то есть принимает значение 1 при любом натуральном значении переменной х)?
Ответ: 18
✍ Решение:
✎ Решение с использованием программирования:
PascalABC.NET:
Питон:
1 2 3 4 5 6 |
for A in range(1,1000): OK = 1 for x in range(1,1000): OK *= (x % A != 0) <= ((x % 6 == 0) <= (x % 9 != 0)) if OK: print( A ) |
C++:
✎ Решение теоретическое:
- Введем обозначения и перепишем исходную формулу:
¬А → (6 → ¬9) = 1
А ∨ ¬6 ∨ ¬9 = 1
¬(¬6 ∨ ¬9) = 1
6 ∧ 9 = 1
А
, на которое делятся все натуральные х
, такое что эти х
делятся и на 6 и на 9 одновременно:x/A : x/6 AND x/9
х
, которые одновременно делятся и на 6 и на 9:х = 18, 36, 54, 72 ...
А
, начиная с наименьшего, до такого наибольшего А, которое будет делителем всех найденных х
:А = 1, 2, 3,4,5, ... 18
При попытке взять большее А
, x
равный 18 не будет делиться на такое А
.
Ответ: 18
16.
16 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1; F(n) = n + F(n − 1), если n – чётно, F(n) = 2 × F(n − 2), если n > 1 и при этом n – нечётно
Чему равно значение функции F(26)?
Ответ: 4122
🎦 Видео
✍ Решение:
✎ Решение с использованием программирования:
PascalABC.NET:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
function F(n: integer): integer; begin if n <= 1 then F := 1; if n mod 2 = 0 then F := n + F(n - 1); if (n > 1) and (n mod 2 <> 0) then F := 2 * F(n - 2) end; begin print(F(26)) end. |
Питон:
1 2 3 4 5 6 7 8 |
def F( n ): if n <= 1: return 1 if (n % 2 == 0): return n + F(n-1) if (n>1 and n % 2 != 0): return 2 * F(n-2) print (F(26)) |
C++:
Ответ: 4122
17.
17 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Рассматривается множество целых чисел, принадлежащих числовому отрезку [1016; 7937], которые делятся на 3 и не делятся на 7, 17, 19, 27. Найдите количество таких чисел и максимальное из них.
В ответе запишите два целых числа: сначала количество, затем максимальное число.
! Для выполнения этого задания можно написать программу или воспользоваться редактором электронных таблиц
Ответ: 1568 | 7935
🎦 Видео
✍ Решение:
-
✎ Решение с использованием программирования:
- Первое значение диапазона введем в ячейку A1:
- Используем прогрессию для заполнения всего диапазона числами. Для это выберите вкладку Главная и щелкните по кнопке Прогрессия:
- Столбец B будем использовать для поиска чисел, которые делятся на 3. Для этого в ячейку B1 введите формулу с рисунка:
- Двойным щелчком по маркеру заполнения скопируйте формулу на весь столбец:
- Столбец С будем использовать для поиска чисел, которые НЕ делятся на 7. Для этого в ячейку С1 введите формулу с рисунка:
- Заполните весь столбец двойным щелчком по маркеру заполнения.
- Cтолбцы D, E, F таким же образом будем использовать для поиска чисел столбца А, которые не делятся на 17, 19 и 27
- Для поиска всех истинных значений используем столбец G. В ячейку G1 введите функцию
ЕСЛИ
: если все значения ячеек в столбцах B-F в этой строке истинны, выводим число из А1, иначе – пустую строку: - Ячейку H1 будем использовать для подсчета таких чисел, которые удовлетворяют всем условиям, т.е. для подсчета непустых ячеек столбца G:
- Ячейку H2 будем использовать для подсчета такого наибольшего числа:
Паскаль:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
var i, k, max: integer; begin k := 0; max := 0; for i := 1016 to 7937 do begin if (i mod 3 = 0) and (i mod 7 > 0) and (i mod 17 > 0) and (i mod 19 > 0) and (i mod 27 > 0) then begin max:= i; inc(k); end; end; writeln(k, ' ', max) end. |
PascalABC.NET:
1 2 3 4 |
begin var s := Range( 1017, 7937, 3).Where( i -> not i.DivsAny(7, 17, 19, 27) ); print( s.Count, s.Max ); end. |
Питон:
1 2 3 |
a = [n for n in range(1016,7937+1) if (n%3==0 and n%7!=0 and n%17!=0 and n%19!=0 and n%27!=0)] print(len(a),max(a)) |
Список a формируем, используя генератор списка: то есть в список попадут только не числа из диапазона [1016,7937], которые удовлетворяют всем перечисленным условиям: n%3==0
(число делится на 3), n%7!=0
(число не делится на 7) и т.п.
C++:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#include <iostream> int main() { int count = 0; int maxGood = 0; for(int n=1016; n<=7937; n++) if( (n % 3 == 0) and (n % 7 != 0) and (n % 17 != 0) and (n % 19 != 0) and (n % 27 != 0) ) { maxGood = n; count += 1; } std::cout << count << " " << maxGood; } |
✎ Решение с помощью Excel:
Заполните весь столбце, используя маркер автозаполнения.
🎦 Видео
18.
18 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Задание выполняется с использованием прилагаемых файлов
Квадрат разлинован на N×N клеток (1 < N < 17
). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз – в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю.
В ответе укажите два числа – сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N×N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
Для указанных входных данных ответом должна быть пара чисел:
Ответ: 1204 | 502
Видео
Решение подобного задания
19.
19 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат две кучи камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в одну из куч (по своему выбору) один камень или увеличить количество камней в куче в два раза.
Например, пусть в одной куче 10 камней, а в другой 5 камней; такую позицию в игре будем обозначать (10, 5). Тогда за один ход можно получить любую из четырёх позиций: (11, 5), (20, 5), (10, 6), (10, 10).
Для того чтобы делать ходы, у каждого игрока есть неограниченное количество камней.
Игра завершается в тот момент, когда суммарное количество камней в кучах становится не менее 77. Победителем считается игрок, сделавший последний ход, т.е. первым получивший такую позицию, при которой в кучах будет 77 или больше камней.
В начальный момент в первой куче было семь камней, во второй куче – S камней; 1 ≤ S ≤ 69.
Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока – значит описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника. В описание выигрышной стратегии не следует включать ходы играющего по этой стратегии игрока, не являющиеся для него безусловно выигрышными, т.е. не являющиеся выигрышными независимо от игры противника.
Известно, что Ваня выиграл своим первым ходом после неудачного первого хода Пети. Укажите минимальное значение S, когда такая ситуация возможна.
Ответ: 18
✍ Решение 1:
- Нарисуем таблицу, в первом столбце которой будем откладывать количество камней в первой куче, а в первой строке — количество камней во второй куче. Получим матрицу. Поскольку в первой куче количество начинается с 7, то это и будет первым значением в таблице. Во второй куче начнем с наибольшего возможного числа — 69:
- Далее будем рассуждать так: Петя может выиграть первым ходом, выполнив команду *2 (увеличить количество камней в куче в два раза), если вместо
S
(кол-во камней во второй куче), мы будем изменять значение, начиная от 35, до последнего возможного по условию значения 69:
7 + 35*2 = 77 (>=77)
+
означает выигрышную позицию с первого хода.S
, из которого можно попасть в диапазон выигрышных позиций для соперника:17 * 2 = 34 (мало, необходимо 35 и более)
18 * 2 = 36 подходит!
Ответ: 18
✍ Решение 2 (Excel):
- В столбце
А
отложим значения — количество камней в первой куче. Начнем с ячейкиА2
, в которую внесем начальное количество камней, т.е. 7. Автозаполнением продлим значения вниз до 25 примерно: - В строке
1
таблицы (начиная с ячейкиB1
) отложим значения для второй кучи. Поскольку в задании говорится, что 0<=S<=69, то последним значением пусть будет 40. В дальнейшем часть таблицы можно будет удалить: - Из двух команд, которые могут выполнять игроки, выберем наиболее сильную, т.е. благодаря которой можно быстрее достичь выигрышного диапазона и попасть в значения S>=77. Это команда удваивания количества камней, т.е.
*2
. - Для каждой из ячеек полученной таблицы рассчитаем значение, полученное в результате удвоения той кучи камней, в которой большее количество камней (так как это даст бОльший результат). Например, для ячейки С5, в которой игрок имеет в первой куче 10 камней, а во второй куче 2 камня, мы бы выполнили действие 10*2+2. Т.е. удвоили бы первую кучу, т.к. в ней больше камней.
- Чтобы автоматизировать процесс необходимо использовать формулу, в которой найдем максимальное значение из двух вариантов: Максимальное из(1куча*2 + 2куча, 1куча + 2*2куча). Выразив это в формуле Excel, получим результат, который внесем в ячейку
B2
:
=МАКС($A2+2*B$1;2*$A2+B$1)
$
будем использовать для фиксации столбца А и строки 1 при копировании формулы.Ответ: 18
Решение задания смотрите на видео (2 способ, Excel):
Видео
Решение задания смотрите на видео (1 способ):
Видео
Решение подобного задания смотрите на видео:
🎦 Видео
20.
20 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Для игры, описанной в предыдущем задании, найдите два таких значения S, при которых у Пети есть выигрышная стратегия, причём одновременно выполняются два условия:
Найденные значения запишите в ответе в порядке возрастания.
Ответ: 31 | 34
✍ Решение 1:
- Проанализируем таблицу, увеличивая количество камней в первой куче и выполняя поиск выигрышных позиций с одного хода. Знаком
+2
будет отмечать выигрышные позиции со второго хода, т.е. из которых можно перевести соперника в проигрышную позицию со знаком-
: - Последующая логика рассуждений: Петя может выиграть свои вторым ходом, если он не может выиграть первым ходом, и одновременно получив позицию, выигрышную со второго хода:
(7,34) -> (8,34) (7,31) -> (14,31)
Ответ: 31 34
✎ Решение 2 (Excel)
- Продолжаем работать с той же таблицей, что и в задании 19. Выделим все проигрышные позиции (из которых можно походить только в выигрышные позиции для соперника, т.е. в выделенные ячейки):
Ответ: 31 34
Решение задания смотрите на видео (1 способ):
🎦 Видео
21.
21 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Для игры, описанной в задании 19, найдите минимальное значение S, при котором одновременно выполняются два условия:
✍ Решение:
- Необходимо найти для Пети проигрышные позиции со второго хода. Это должна быть первая строка, т.к. это первый ход Пети. Первое подходящее значение — 33, из него Петя может либо сразу походить в выигрышную позицию с первого хода
(7, 66)
, либо в выигрышную позицию со второго хода:(7,34)
и(8,33)
. - Но есть значение меньше 33, это значение 30:
Ваня выиграет с первого хода, если: Петя (7,60) Ваня выиграет с последующих ходов, если: Петя (7,31), (8,30), (14,30)
Ответ: 30
Решение задания смотрите на видео:
🎦 Видео
22.
22 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Ниже на четырёх языках программирования записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа: L и M. Укажите наибольшее число x, при вводе которого алгоритм печатает сначала 4, а потом 5.
Паскаль:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
var x, L, M, Q: integer; begin readln(x); Q := 9; L := 0; while x >= Q do begin L := L + 1; x := x - Q; end; M := x; if M < L then begin M := L; L := x; end; writeln(L); writeln(M); end. |
Алгоритмический язык:
алг нач цел x, L, M, Q ввод x Q := 9 L := 0 нц пока x >= Q L := L + 1 x := x - Q кц M := x если M < L то M := L L := x все вывод L, нс, M кон |
Python:
x = int(input()) Q = 9 L = 0 while x >= Q: L = L + 1 x = x - Q M = x if M < L: M = L L = x print(L) print(M) |
С++:
#include <iostream> using namespace std; int main() { int x, L, M, Q; cin >> x; Q = 9; L = 0; while (x >= Q){ L = L + 1; x = x - Q; } M = x; if (M < L){ M = L; L = x; } cout <<L <<endl <<M <<endl; return 0; } |
Ответ: 49
23.
23 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Исполнитель преобразует число на экране.
У исполнителя есть две команды, которым присвоены номера:
1. Прибавить 1
2. Умножить на 2
Первая команда увеличивает число на экране на 1, вторая умножает его на 2.
Программа для исполнителя – это последовательность команд.
Сколько существует программ, для которых при исходном числе 1 результатом является число 20, и при этом траектория вычислений содержит число 10?
Траектория вычислений программы – это последовательность результатов выполнения всех команд программы.
Например, для программы 121 при исходном числе 7 траектория будет состоять из чисел 8, 16, 17.
Ответ: 28
24.
24 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Задание выполняется с использованием прилагаемых файлов
Текстовый файл состоит не более чем из 106 символов X, Y и Z.
Определите максимальное количество идущих подряд символов, среди которых каждые два соседних различны.
Для выполнения этого задания следует написать программу.
Ответ: 35
🎦 Видео
✍ Решение:
-
Паскаль:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
var f: text; i, k, max: integer; s: string; begin assign(f, 'D:24.txt'); reset(f); readln(f, s); max := 1; k := 1; // кол-во подряд идущих for i := 2 to length(s) do begin if s[i] <> s[i - 1] then begin inc(k); if k > max then max := k; end else k := 1; end; write(max) end. |
Python:
1 2 3 4 5 6 7 8 9 10 11 |
f=open('D:/24.txt') s=f.readline() m=1 k=1 for i in range(1,len(s)): if s[i]!=s[i-1]: k+=1 m=max(k,m) else: k=1 print(m) |
25.
25 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
Напишите программу, которая ищет среди целых чисел, принадлежащих числовому отрезку [174457; 174505], числа, имеющие ровно два различных натуральных делителя, не считая единицы и самого числа. Для каждого найденного числа запишите эти два делителя в таблицу на экране с новой строки в порядке возрастания произведения этих двух делителей. Делители в строке таблицы также должны следовать в порядке возрастания.
Например, в диапазоне [5; 9] ровно два целых различных натуральных делителя имеют числа 6 и 8, поэтому для этого диапазона таблица на экране должна содержать следующие значения:
2 | 3 2 | 4
Ответ:
3 | 58153 7 | 24923 59 | 2957 13 | 13421 149 | 1171 5 | 34897 211 | 827 2 | 87251
Разбор подобного задания смотрите на видео:
🎦 Видео
✍ Решение:
- Поскольку требуется искать числа, у которых есть всего два делителя, то следует помнить, что:
- Будем использовать оптимизированный вариант программы, подходящий для «медленных» компьютеров. Для этого перебор делителей для числа
n
будем выполнять от2
до√n
, округлив его до ближайшего целого числа (не включая точный квадратный корень, если он существует):
PascalABC.net:
|
||
Python:
|
||
С++: |
✎ Решение (оптимизированный вариант 1):
если число имеет ровно два делителя, отличных от единицы и самого числа, то произведение этих делителей и есть само число
вместо диапазона делителей [2; число] использовать диапазон [2; округл(√n)]
n
), то в список делителей добавлять будем только сам делитель, если нет – то добавляем пару делителей (делитель
и n // делитель
):Пример: число 8 = 2 * 4 Достаточно рассмотреть цикл от 2 до округл(√8) (=2) если 8 делится на 2 и 8/2 не равно 2, то делители: 2 и 4 (8/2)
PascalABC.net:
|
||
Python:
|
||
С++: |
✎ Решение (оптимизированный вариант 2):
Python:
1 2 3 4 |
for n in range(174457, 174505+1): divs = [d for d in range(2, n) if n % d == 0] # range(2, n), т.к. два делителя, не считая 1 и самого числа if len(divs) == 2: print( *divs ) |
✎ Решение (оптимизированный вариант 3):
PascalABC.net:
|
||
Python:
|
||
С++: |
26.
27.
В решение заданий демо-версии 2021 используется язык программирования Python.
Задание 1. Анализ информационных моделей На рисунке схема дорог Н-ского района изображена в виде графа, в таблице содержатся сведения о протяжённости каждой из этих дорог (в километрах). Так как таблицу и схему рисовали независимо друг от друга, то нумерация населённых пунктов в таблице никак не связана с буквенными обозначениями на графе. Определите, какова протяжённость дороги из пункта Г в пункт Ж. В ответе запишите целое число – так, как оно указано в таблице.
|
Анализируя таблицу, мы видим, что только между населенными пунктами 3 и 6, есть одна дорога 36, протяженностью 12 км, причем из пункта 6, кроме данной дороги, выходят еще три, это дороги 62,64 и 65. Рассуждая таким образом, получим граф: Таким образом, протяженность дороги ГЖ (14) равна 9 км. Ответ: 9 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 2. Построение таблиц истинности логических выражений Миша заполнял таблицу истинности функции (x v y) & ¬(y≡z) & ¬w, но успел заполнить лишь фрагмент из трёх различных её строк, даже не указав, какому столбцу таблицы соответствует каждая из переменных w, x, y, z. Определите, какому столбцу таблицы соответствует каждая из переменных w, x, y, z. В ответе напишите буквы w, x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала буква, соответствующая первому столбцу; затем буква, соответствующая второму столбцу, и т.д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно. |
Ответ: ZYXW |
|||||||||||||||||||||||||||||||||||||||||||||||
Пример. Функция задана выражением ¬x v y, зависящим от двух переменных, а фрагмент таблицы имеет следующий вид. В этом случае первому столбцу соответствует переменная y, а второму столбцу – переменная x. В ответе следует написать yx. |
||||||||||||||||||||||||||||||||||||||||||||||||
Задание 3. Базы данных. Файловая система Ниже представлены два фрагмента таблиц из базы данных о жителях микрорайона. Каждая строка таблицы 2 содержит информацию о ребёнке и об одном из его родителей. Информация представлена значением поля ID в соответствующей строке таблицы 1. Определите на основании приведённых данных ID женщины, ставшей матерью в наиболее молодом возрасте. При вычислении ответа учитывайте только информацию из приведённых фрагментов таблиц. |
В таблице 2 удобно добавить колонку и посчитать возраст мамы, возраст пап считать не будем (ID родителя мужского пола).
Таким образом, по таблице мы видим, что самой молодой маме было 22 года, это ID родителя 64 Ответ: 64 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 4. Кодирование и декодирование информации Для кодирования некоторой последовательности, состоящей из букв Л, М, Н, П, Р, решили использовать неравномерный двоичный код, удовлетворяющий условию, что никакое кодовое слово не является началом другого кодового слова. Это условие обеспечивает возможность однозначной расшифровки закодированных сообщений. Для букв Л, М, Н использовали соответственно кодовые слова 00, 01, 11. Для двух оставшихся букв – П и Р – кодовые слова неизвестны. Укажите кратчайшее возможное кодовое слово для буквы П, при котором код будет удовлетворять указанному условию. Если таких кодов несколько, укажите код с наименьшим числовым значением. |
Поскольку никакое кодовое слово не является началом другого кодового слова, код 10 использовать нельзя, значит получим два слова 100 и 101, из которых наименьшее 100 и будет ответом на вопрос задачи. Ответ: 100 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 5. Анализ и построение алгоритмов для исполнителей На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1. Строится двоичная запись числа N. 2. К этой записи дописываются справа ещё два разряда по следующему правилу: а) складываются все цифры двоичной записи числа N, и остаток от деления суммы на 2 дописывается в конец числа (справа). Например, запись 11100 преобразуется в запись 111001; б) над этой записью производятся те же действия – справа дописывается остаток от деления суммы её цифр на 2. Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R. Укажите такое наименьшее число N, для которого результат работы данного алгоритма больше числа 77. В ответе это число запишите в десятичной системе счисления. |
Минимальное R, большее 77, это 78.
Мы видим, что подходят по алгоритму числа 78 и 80, из которых 78 наименьшее. Чтобы найти искомое число N, отбросим два дополнительных разряда от найденного 1001110. Правило: Если от двоичного числа отбросить младший разряд, то оно разделится на 2 целочисленным образом (т.е. делим на 2, если есть остаток, убираем его). Уберём второй дополнительный разряд у числа 1001110, получается 78 / 2 = 39 (100111). Уберём ещё и первый дополнительный разряд , получается 39 / 2 = 19 (10011), следовательно двоичное представление искомого числа N равно 10011, а десятичное 19. Ответ: 19
|
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 6. Анализ программ Определите, при каком наибольшем введённом значении переменной s программа выведет число 64. s = int(input()) |
Переменная n менялась в цикле от 1 до 64, на каждом шаге, увеличивалась в 2 раза. Построим трассировочную таблицу в обратном порядке.
Наибольшее значение s на первом шаге равно 259. Ответ: 259 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 7. Кодирование и декодирование информации. Передача информации Для хранения произвольного растрового изображения размером 128×320 пикселей отведено 20 Кбайт памяти без учёта размера заголовка файла. Для кодирования цвета каждого пикселя используется одинаковое количество бит, коды пикселей записываются в файл один за другим без промежутков. Какое максимальное количество цветов можно использовать в изображении? |
N = 2 i, I = K · i , i = I/K I = 20 · 213 бит К = 27 · 25 · 10 = 5 · 213 i = (20 · 213)/ (5 · 213) = 4 бита N = 24 = 16 символов Ответ: 16 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 8. Перебор слов и системы счисления Игорь составляет таблицу кодовых слов для передачи сообщений, каждому сообщению соответствует своё кодовое слово. В качестве кодовых слов Игорь использует трёхбуквенные слова, в которых могут быть только буквы Ш, К, О, Л, А, причём буква К появляется ровно 1 раз. Каждая из других допустимых букв может встречаться в кодовом слове любое количество раз или не встречаться совсем. Сколько различных кодовых слов может использовать Игорь? |
⌈K * * * {Ш, О, Л, А} Получим, 1 · 4 · 4 + 4 · 1 · 4 + 4 · 4 · 1 = 16 + 16 + 16 = 48 Ответ: 48 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 9. Работа с таблицами Откройте файл электронной таблицы, содержащей вещественные числа — результаты ежечасного измерения температуры воздуха на протяжении трёх месяцев. Найдите разность между максимальным значением температуры и её средним арифметическим значением. В ответе запишите только целую часть получившегося числа.Файл с данными |
При помощи формул найдем нужные значения: =МАКС(B2:Y92) И их разность, которую округляем до целого Ответ: 14 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 10. Поиск символов в текстовом редакторе Файл с данными С помощью текстового редактора определите, сколько раз, не считая сносок, встречается слово «долг» или «Долг» в тексте романа в стихах А. С. Пушкина «Евгений Онегин». Другие формы слова «долг», такие как «долги», «долгами» и т. д., учитывать не следует. В ответе укажите только число. |
В текстовом редакторе используем инструмент найти (по умолчанию он не учитывает регистр, в расширенном поиске есть кнопка больше, где можно проверить настройки). Ищем слово целиком. Оно встречается один раз во фразе «Цензуре долг свой заплачу». Ответ: 1 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 11. Вычисление количества информации При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий из 15 символов и содержащий только символы из 8-символьного набора: А, В, C, D, Е, F, G, H. В базе данных для хранения сведений о каждом пользователе отведено одинаковое и минимально возможное целое число байт. При этом используют посимвольное кодирование паролей, все символы кодируют одинаковым и минимально возможным количеством бит. Кроме собственно пароля, для каждого пользователя в системе хранятся дополнительные сведения, для чего отведено 24 байт на одного пользователя. Определите объём памяти (в байтах), необходимый для хранения сведений о 20 пользователях. В ответе запишите только целое число — количество байт. |
N : { А, В, C, D, Е, F, G, H} – всего 8 различных символов в наборе N = 2 i, 8=23, значит для кодирования одного символа нужно 3 бита I = K · i I = 15 · 3 = 45 бит ≈ 6 байт – отводится на пароль I = 6 + 24 = 30 байт – на одного пользователя (с доп. информацией) I20 = 20 · 30 = 600 байт – всего Ответ: 600 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 12. Выполнение алгоритмов для исполнителей Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр. А) заменить (v, w). Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Б) нашлось (v). Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется. Цикл выполняется, пока условие истинно. В конструкции ЕСЛИ условие выполняется команда 1 (если условие истинно). В конструкции ЕСЛИ условие выполняется команда 1 (если условие истинно) или команда 2 (если условие ложно). Какая строка получится в результате применения приведённой ниже программы к строке, состоящей из 70 идущих подряд цифр 8? В ответе запишите полученную строку. НАЧАЛО |
s = 70 * ‘8’ 35 раз каждые четыре символа будут заменены на два. Останется 22
Ответ: 22 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 13. Поиск путей в графе На рисунке представлена схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, З, И, К, Л, М. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой.Сколько существует различных путей из города А в город М, проходящих через город В? |
Ответ: 24 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 14. Кодирование чисел. Системы счисления Значение выражения 497 + 721 − 7? записали в системе счисления с основанием 7. Сколько цифр «6» содержится в этой записи? |
497 + 721 − 7 = 714 + 721 − 7=100000000000000 + 1000000000000000000000 — 1= В семеричной системе счисления 721 это число, состоящее из 1 и 21 нуля. Ответ: 13 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 15. Преобразование логических выражений Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m». Для какого наибольшего натурального числа А формула |
Ответ: 18 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 16. Рекурсивные алгоритмы Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями: F(n) = 1 при n = 1; F(n) = n + F(n − 1), если n — чётно; F(n) = 2 × F(n − 2), если n> 1 и при этом n — нечётно. Чему равно значение функции F(26)? |
F(1) = 1
Мы видим, что значения функции от нечетных n представляют из себя степени двойки. F(26) = 26 + F(25) = 26 + 212 = 26 + 4096 = 4122 Ответ: 4122 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 17. Проверка на делимость Рассматривается множество целых чисел, принадлежащих числовому отрезку [1016; 7937], которые делятся на 3 и не делятся на 7, 17, 19, 27. Найдите количество таких чисел и максимальное из них. В ответе запишите два целых числа без пробелов и других дополнительных символов: сначала количество, затем максимальное число. Для выполнения этого задания можно написать программу или воспользоваться редактором электронных таблиц. |
k=0 Ответ: 1568 7935 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 18. Робот-сборщик монет Файл с данными Квадрат разлинован на N×N клеток (1 < N < 17). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота. Откройте файл. Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответ запишите два числа друг за другом без разделительных знаков — сначала максимальную сумму, затем минимальную. Исходные данные представляют собой электронную таблицу размером N×N, каждая ячейка которой соответствует клетке квадрата.Пример входных данных:
Для указанных входных данных ответом должна быть пара чисел 41 и 22. |
Найдём максимальную денежную сумму. Для этого найдём максимальную денежную сумму для каждой ячейки таблицы. В ячейку L1 запишем формулу =СУММ($A$1:A1). Скопируем эту формулу во все ячейки в диапазоне M1:U1 и в диапазоне L2:L10. Для остальных ячеек будем сравнивать значение ячейки слева и значение ячейки сверху и присваивать текущей ячейке значение суммы той ячейки, в которой значение больше, и текущей ячейки. В M2 запишем формулу =ЕСЛИ(L2>M1;L2+B2;M1+B2) и скопируем эту формулу во все ячейки диапазона M2:U10. Таким образом, в ячейке U10 получим значение максимальной денежной суммы — 1204.
Аналогичным образом найдём значение минимальной денежной суммы. Ячейки диапазонов L1:L10 и M1:U1 заполняются также, как при поиске максимальной денежной суммы. В M2 запишем формулу =ЕСЛИ(L2 < M1;L2+B2;M1+B2) и скопируем эту формулу во все ячейки диапазона M2:U10. Таким образом, в ячейке U10 получим значение минимальной денежной суммы — 502. Ответ: 1204 502 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 19. Выигрышная стратегия. Задание 1 Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат две кучи камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в одну из куч (по своему выбору) один камень или увеличить количество камней в куче в два раза. Например, пусть в одной куче 10 камней, а в другой 5 камней; такую позицию в игре будем обозначать (10, 5). Тогда за один ход можно получить любую из четырёх позиций: (11, 5), (20, 5), (10, 6), (10, 10). Для того чтобы делать ходы, у каждого игрока есть неограниченное количество камней. Игра завершается в тот момент, когда суммарное количество камней в кучах становится не менее 77. Победителем считается игрок, сделавший последний ход, т. е. первым получивший такую позицию, при которой в кучах будет 77 или больше камней. В начальный момент в первой куче было семь камней, во второй куче — S камней; 1 ≤ S ≤ 69. Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока — значит описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника. В описание выигрышной стратегии не следует включать ходы играющего по этой стратегии игрока, не являющиеся для него безусловно выигрышными, т. е. не являющиеся выигрышными независимо от игры противника. Известно, что Ваня выиграл своим первым ходом после неудачного первого хода Пети. Укажите минимальное значение S, когда такая ситуация возможна. |
Ваня выиграл первым ходом после неудачного хода Пети. Победителем считается игрок, сделавший последний ход, при которой в кучах будет 77 или больше камней. Нужно найти минимальное S, при котором возможна победа Вани. Чтобы S было минимальным, Петя и Ваня удваивали S, значит, (77-7) /4 » 18 . Округляем до целого. Ответ: 18 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 20. Выигрышная стратегия. Задание 2 Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат две кучи камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в одну из куч (по своему выбору) один камень или увеличить количество камней в куче в два раза. Например, пусть в одной куче 10 камней, а в другой 5 камней; такую позицию в игре будем обозначать (10, 5). Тогда за один ход можно получить любую из четырёх позиций: (11, 5), (20, 5), (10, 6), (10, 10). Для того чтобы делать ходы, у каждого игрока есть неограниченное количество камней. Игра завершается в тот момент, когда суммарное количество камней в кучах становится не менее 77. Победителем считается игрок, сделавший последний ход, т. е. первым получивший такую позицию, при которой в кучах будет 77 или больше камней. В начальный момент в первой куче было семь камней, во второй куче — S камней; 1 ≤ S ≤ 69. Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока — значит описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника. В описание выигрышной стратегии не следует включать ходы играющего по этой стратегии игрока, не являющиеся для него безусловно выигрышными, т. е. не являющиеся выигрышными независимо от игры противника. Найдите два таких значения S, при которых у Пети есть выигрышная стратегия, причём одновременно выполняются два условия: — Петя не может выиграть за один ход; — Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня. Найденные значения запишите в ответе в порядке возрастания без разделительных знаков. |
Значения S 35 и 36 не подходят, поскольку в этом случае Петя может выиграть своим первым ходом. Рассмотрим значение S = 34.
Рассматривая аналогично числа 33 и 32, из дерева мы видим, что комбинации (9, 33) и (9, 32) приведут к победе Вани.
Рассмотрим число 31. Если Петя выбирает комбинацию первого хода (14, 31), то видим на дереве, что она приводит к выигрышу Пети вторым ходом. Ответ: 3134 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 21. Выигрышная стратегия. Задание 3 Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат две кучи камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в одну из куч (по своему выбору) один камень или увеличить количество камней в куче в два раза. Например, пусть в одной куче 10 камней, а в другой 5 камней; такую позицию в игре будем обозначать (10, 5). Тогда за один ход можно получить любую из четырёх позиций: (11, 5), (20, 5), (10, 6), (10, 10). Для того чтобы делать ходы, у каждого игрока есть неограниченное количество камней. Игра завершается в тот момент, когда суммарное количество камней в кучах становится не менее 77. Победителем считается игрок, сделавший последний ход, т. е. первым получивший такую позицию, при которой в кучах будет 77 или больше камней. В начальный момент в первой куче было семь камней, во второй куче — S камней; 1 ≤ S ≤ 69. Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока — значит описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника. В описание выигрышной стратегии не следует включать ходы играющего по этой стратегии игрока, не являющиеся для него безусловно выигрышными, т. е. не являющиеся выигрышными независимо от игры противника. Найдите минимальное значение S, при котором одновременно выполняются два условия: — у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети; — у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом. |
Рассмотрим S=30. Из дерева видим, что данное число камней во второй куче приводит к выигрышу Вани первым или вторым ходом при любой игре Пети. Ответ: 30 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 22. Анализ программы с циклами и условными операторами Дан алгоритм. (код на языке Python). Получив на вход число x, этот алгоритм печатает два числа: L и M. Укажите наибольшее число x, при вводе которого алгоритм печатает сначала 4, а потом 5. x = int(input()) Q = 9 L = 0 while x >= Q: L = L + 1 x = x — Q M = x if M < L: M = L L = x print(L) print(M) |
Данный алгоритм ищет два числа: целую часть от деления x на 9 и остаток от деления x на 9. Если остаток от деления числа x на 9 меньше, чем целая часть, то алгоритм меняет местами значения L и M. В результате работы алгоритма на экран будут выведены два числа: 4 и 5. Значит, чтобы найти наибольшее число x, число 5 должно являться целой частью от деления x на 9, а число 4 — остатком от деления x на 9. То есть, x = 9 · 5 + 4 = 49. Ответ: 49 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 23. Анализ программы с циклами и условными операторами Исполнитель преобразует число на экране. У исполнителя есть две команды, которым присвоены номера: 1. Прибавить 1 Первая команда увеличивает число на экране на 1, вторая умножает его на 2. Программа для исполнителя — это последовательность команд. Сколько существует программ, для которых при исходном числе 1 результатом является число 20 и при этом траектория вычислений содержит число 10? Траектория вычислений программы — это последовательность результатов выполнения всех команд программы. Например, для программы 121 при исходном числе 7 траектория будет состоять из чисел 8, 16, 17. |
Данное дерево вариантов показывает программы получения 10 из 1. Всего мы видим 14 различных вариантов. Чтобы получить из числа 10 число 20, есть два варианта, последовательно прибавлять 1 или умножить на 2. То есть 14 * 2 = 28 Ответ: 28 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 24. Анализ программы с циклами и условными операторами Файл с данными Текстовый файл состоит не более чем из 106 символов X, Y и Z. Определите максимальное количество идущих подряд символов, среди которых каждые два соседних различны. Для выполнения этого задания следует написать программу. |
with open(«24.txt», «r») as f: for i in range(2,len(s)): print(m) Ответ: 35 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 25. Анализ программы с циклами и условными операторами Напишите программу, которая ищет среди целых чисел, принадлежащих числовому отрезку [174457; 174505], числа, имеющие ровно два различных натуральных делителя, не считая единицы и самого числа. Для каждого найденного числа запишите эти два делителя в два соседних столбца на экране с новой строки в порядке возрастания произведения этих двух делителей. Делители в строке также должны следовать в порядке возрастания. Например, в диапазоне [5; 9] ровно два различных натуральных делителя имеют числа 6 и 8, поэтому для этого диапазона вывод на экране должна содержать следующие значения: 2 3 |
for i in range(174457, 174506): |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 26. Анализ программы с циклами и условными операторами Системный администратор раз в неделю создаёт архив пользовательских файлов. Однако объём диска, куда он помещает архив, может быть меньше, чем суммарный объём архивируемых файлов. Известно, какой объём занимает файл каждого пользователя. По заданной информации об объёме файлов пользователей и свободном объёме на архивном диске определите максимальное число пользователей, чьи файлы можно сохранить в архиве, а также максимальный размер имеющегося файла, который может быть сохранён в архиве, при условии, что сохранены файлы максимально возможного числа пользователей. Файл с данными В первой строке входного файла находятся два числа: S — размер свободного места на диске (натуральное число, не превышающее 10 000) и N — количество пользователей (натуральное число, не превышающее 1000). В следующих N строках находятся значения объёмов файлов каждого пользователя (все числа натуральные, не превышающие 100), каждое в отдельной строке. Запишите в ответе два числа: сначала наибольшее число пользователей, чьи файлы могут быть помещены в архив, затем максимальный размер имеющегося файла, который может быть сохранён в архиве, при условии, что сохранены файлы максимально возможного числа пользователей. Пример входного файла: 100 4 При таких исходных данных можно сохранить файлы максимум двух пользователей. Возможные объёмы этих двух файлов 30 и 40, 30 и 50 или 40 и 50. Наибольший объём файла из перечисленных пар — 50, поэтому ответ для приведённого примера: 2 50 |
f = open(«26.txt», «r») for i in P: m=0 # максимальный размер имеющегося файла, который может быть сохранён в архиве, при условии, что сохранены файлы максимально возможного числа пользователей for i in range(len(P)): print(k,m) Ответ: 568 50 |
|||||||||||||||||||||||||||||||||||||||||||||||
Задание 27. Анализ программы с циклами и условными операторами Имеется набор данных, состоящий из пар положительных целых чисел. Необходимо выбрать из каждой пары ровно одно число так, чтобы сумма всех выбранных чисел не делилась на 3 и при этом была максимально возможной. Гарантируется, что искомую сумму получить можно. Программа должна напечатать одно число — максимально возможную сумму, соответствующую условиям задачи. Входные данные Файл A Файл B Даны два входных файла (файл A и файл B), каждый из которых содержит в первой строке количество пар N (1 ≤ N ≤ 100000). Каждая из следующих N строк содержит два натуральных числа, не превышающих 10 000. Пример организации исходных данных во входном файле: 6 Для указанных входных данных значением искомой суммы должно быть число 32.В ответе укажите два числа: сначала значение искомой суммы для файла А, затем для файла B. Предупреждение: для обработки файла B не следует использовать переборный алгоритм, вычисляющий сумму для всех возможных вариантов, поскольку написанная по такому алгоритму программа будет выполняться слишком долго. |
with open(«27-A.txt», «r») as f: for i in range(k): if s%3!=0: Ответ: 127127 399762080 |
26 августа 2020
В закладки
Обсудить
Жалоба
Разбор нового формата ЕГЭ по информатике.
00:00:00 Лирическое вступление
00:05:37 Задание №1 (№3 в ЕГЭ 2020)
00:11:20 Задание №2 (№2 в ЕГЭ 2020)
00:17:45 Задание №3 (№4 в ЕГЭ 2020)
00:23:11 Задание №4 (№5 в ЕГЭ 2020)
00:27:55 Задание №5 (№6 в ЕГЭ 2020)
00:31:00 Задание №6 (№8 в ЕГЭ 2020)
00:34:11 Задание №7 (№9 в ЕГЭ 2020)
00:37:03 Задание №8 (№10 в ЕГЭ 2020)
00:41:30 Задание №9
00:46:43 Задание №10
00:51:14 Задание №11 (№13 в ЕГЭ 2020)
00:54:48 Задание №12 (№14 в ЕГЭ 2020)
01:00:26 Задание №13 (№15 в ЕГЭ 2020)
01:05:15 Задание №14 (№16 в ЕГЭ 2020)
01:07:41 Задание №15 (№18 в ЕГЭ 2020)
01:12:10 Задание №16 (№11 в ЕГЭ 2020)
01:17:07 Задание №17
01:24:54 Задание №18
01:29:42 Задания №19-21 (№26 в ЕГЭ 2020)
01:46:01 Задание №22 (№20 в ЕГЭ 2020)
01:48:17 Задание №23 (№22 в ЕГЭ 2020)
01:49:44 Задание №24
01:53:32 Задание №25
02:03:10 Задание №26
02:11:18 Задание №27 (№27 в ЕГЭ 2020)
02:16:00 Про чтение файлов в Pascal
Решения демоверсии ЕГЭ по информатике 2021 год. Демонстрационный вариант ЕГЭ 2021 г. информатика, 11 класс. Разбор демоверсии ЕГЭ 2021 по информатике.
ege-inf-demo2021
скачать
ege-inf-demo2021-reshn
скачать
Смотрите также:
ЕГЭ 2021 ДЕМО информатика КОМПЬЮТЕРНОЕ ЕГЭ. РАЗБОР ДЕМОВЕРСИИ. Школково
Разбор демо-версии КЕГЭ по информатике 2021. Evgenij Jobs
Смотрите также:
Демоверсия ЕГЭ 2021 по информатике с ответами
ЕГЭ 2021 ДЕМО информатика КОМПЬЮТЕРНОЕ ЕГЭ. РАЗБОР ДЕМОВЕРСИИ. Школково
Смотрите также:
Демоверсия ЕГЭ 2021 по информатике с ответами
Скачать материал
Скачать материал
- Сейчас обучается 31 человек из 21 региона
- Курс добавлен 16.12.2022
- Сейчас обучается 20 человек из 14 регионов
Описание презентации по отдельным слайдам:
-
1 слайд
Анализ ошибок в ЕГЭ. Перспективы ГИА по информатике в 2021 году. Разбор демоверсии ЕГЭ.
Медведчикова О.Л.
учитель математики и информатики
КОГОАУ СШ г.Лузы
23.12.2020 -
-
3 слайд
ЕГЭ по информатике 2020
-
4 слайд
Аппробация КЕГЭ по иформатике
19.11.2020 -
5 слайд
Содержательные разделы:
«Информация и её кодирование»,
«Моделирование и компьютерный эксперимент»,
«Системы счисления»
«Логика и алгоритмы»
«Элементы теории алгоритмов»
«Программирование»
«Архитектура компьютеров и компьютерных сетей»
«Обработка числовой информации»
«Технологии поиска и хранения информации» -
-
-
8 слайд
Задание №1 Б
Раньше это было заданием №3, то есть это старое задание.
Умение представлять и считывать данные в разных типах информационных моделей (схемы, карты, таблицы, графики и формулы) -
9 слайд
Задание №2 Б
Без изменений.
Умение строить таблицы истинности и логические схемы -
10 слайд
Задание №3 Б
Это бывшее задание №4
Знание о технологии хранения, поиска и сортировки информации в реляционных базах данных -
11 слайд
Задание №4 Б
Это бывшее задание №5, его тоже не стоит пугаться
Умение кодировать и декодировать информацию -
12 слайд
Задание №5 Б
Это бывший №6
Формальное исполнение алгоритма, записанного на естественном языке, или умение создавать линейный алгоритм для формального исполнителя с ограниченным набором команд -
13 слайд
Задание №6 Б
Оно как будто чуть-чуть другое, но на самом деле это бывший №8
Знание основных конструкций языка программирования, понятия переменной, оператора присваивания -
14 слайд
Задание №7 Б
Это бывший №9
Умение определять объём памяти, необходимый для хранения графической и звуковой информацииЗадание №8 Б
Это задание №10 из старого формата
Знание о методах измерения количества информации -
15 слайд
⚡Задание №9 Б – Новое задание
Добавилось задание на таблицы. Нужно уметь находить ср, мин и макс значения. Оно несложное, проблем возникнуть не должно.
Умение обрабатывать числовую информацию в электронных таблицах -
16 слайд
Задание №10 Б
Такое легкое задание.
Информационный поиск средствами операционной системы или текстового процессораЗадание №11 П
Бывшее 13 задание
Умение подсчитывать информационный объём сообщения -
17 слайд
Задание №12 П
Бывшее 14 задание. В этом году оно было немного специфичным, дальше, скорее всего, будет так же. Поэтому с ним придется повозиться!Умение анализировать результат исполнения алгоритма
-
18 слайд
Задание №13 П
Бывшее 15 задание. К нему готовиться практически не нужно, очень легкое. Умение представлять и считывать данные в разных типах информационных моделей (схемы, карты, таблицы, графики и формулы)Задание №14 П
Бывшее 16 задание. Достаточно легкое, но в этом году на ЕГЭ оно было не очень приятным
Знание позиционных систем счисления -
19 слайд
Задание №15 П
Бывшее 18 задание. Алгебра логики
Знание основных понятий и законов математической логики -
20 слайд
⚡Задание №16 П Выполнение на компьютере
Похоже на №11 из старого формата, но это не оно. Для решения рекомендуют писать программу
Вычисление рекуррентных выражений⚡ Задание №17 П
Похоже на 25 задание старого формата, также рекомендую решать через программу
Умение создавать собственные программы (20–40 строк) для обработки целочисленной информации -
21 слайд
⚡Задание №18 П
Новое задание, сначала немного напугало, но если внимательно прочитать, всё ясно
Умение обрабатывать вещественные выражения в электронных таблицах -
22 слайд
⚡ Задания №19,20,21 П
Было одно задание №26, а стало 3 задания!Умение анализировать алгоритм
логической игры
Умение найти выигрышную
стратегию игры
Умение построить дерево игры
по заданному алгоритму и найти
выигрышную стратегию -
23 слайд
Задание №22 П
Это №20 из прошлого формата
Умение анализировать алгоритм,
содержащий ветвление и цикл -
24 слайд
Задание №23 П
Это бывший №22. Очень простое заданиеУмение анализировать результат исполнения алгоритма
-
25 слайд
⚡Задание №24 В
Наконец-то в экзамене появились строки! Умение создавать собственные программы (10–20 строк) для обработки символьной информации⚡Задание №25 В
Интересное задание, навык его решения пригодится в вузе!
Умение создавать собственные
программы (10–20 строк)
для обработки целочисленной
информации -
26 слайд
⚡ Задание №26 В
Тоже новое задание на сортировку массива. Оно очень шаблонное, решить реально!Умение обрабатывать
целочисленную информацию
с использованием сортировки -
27 слайд
Задание №27 В
Это старое задание, но оно с каждым годом становится всё сложнее и непонятнее, хотя данный пример в демоверсии несложныйУмение создавать собственные
программы (20–40 строк) для
анализа числовых последова-
тельностей -
28 слайд
Всего заданий – 27; из них
по уровню сложности: Б – 10, П – 13, В – 4.
Максимальный первичный балл за работу – 30.
Общее время выполнения работы – 235 мин.
Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:
6 153 681 материал в базе
- Выберите категорию:
- Выберите учебник и тему
- Выберите класс:
-
Тип материала:
-
Все материалы
-
Статьи
-
Научные работы
-
Видеоуроки
-
Презентации
-
Конспекты
-
Тесты
-
Рабочие программы
-
Другие методич. материалы
-
Найти материалы
Материал подходит для УМК
Другие материалы
- 13.01.2021
- 353
- 6
- 12.01.2021
- 158
- 3
- 12.01.2021
- 708
- 40
Вам будут интересны эти курсы:
-
Курс повышения квалификации «Информационные технологии в деятельности учителя физики»
-
Курс повышения квалификации «Внедрение системы компьютерной математики в процесс обучения математике в старших классах в рамках реализации ФГОС»
-
Курс повышения квалификации «Организация работы по формированию медиаграмотности и повышению уровня информационных компетенций всех участников образовательного процесса»
-
Курс повышения квалификации «Облачные технологии в образовании»
-
Курс повышения квалификации «Применение MS Word, Excel в финансовых расчетах»
-
Курс повышения квалификации «Введение в программирование на языке С (СИ)»
-
Курс профессиональной переподготовки «Управление в сфере информационных технологий в образовательной организации»
-
Курс повышения квалификации «Современные тенденции цифровизации образования»
-
Курс повышения квалификации «Специфика преподавания дисциплины «Информационные технологии» в условиях реализации ФГОС СПО по ТОП-50»
-
Курс повышения квалификации «Современные языки программирования интегрированной оболочки Microsoft Visual Studio C# NET., C++. NET, VB.NET. с использованием структурного и объектно-ориентированного методов разработки корпоративных систем»
-
Курс повышения квалификации «Применение интерактивных образовательных платформ на примере платформы Moodle»