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.
25 июня 2021
В закладки
Обсудить
Жалоба
Подборка заданий основной волны прошедшего ЕГЭ по информатике 24 июня.
Вариант: ege21-inf.pdf
Файлы к заданиям: fajly.zip
Источник: vk.com/inform_web
Уважаемый посетитель!
Если у вас есть вопрос, предложение или жалоба, пожалуйста, заполните короткую форму и изложите суть обращения в текстовом поле ниже. Мы обязательно с ним ознакомимся и в 30-дневный срок ответим на указанный вами адрес электронной почты
Статус Абитуриент Студент Родитель Соискатель Сотрудник Другое
Филиал Абакан Актобе Алагир Алматы Алушта Анапа Ангарск Архангельск Армавир Асбест Астана Астрахань Атырау Баку Балхаш Барановичи Барнаул Белая Калитва Белгород Бельцы Берлин Бишкек Благовещенск Бобров Бобруйск Борисов Боровичи Бронницы Брянск Бузулук Чехов Челябинск Череповец Черкесск Дамаск Дербент Димитровград Дмитров Долгопрудный Домодедово Дубай Дубна Душанбе Екатеринбург Электросталь Елец Элиста Ереван Евпатория Гана Гомель Гродно Грозный Хабаровск Ханты-Мансийск Хива Худжанд Иркутск Истра Иваново Ижевск Калининград Карабулак Караганда Каракол Кашира Казань Кемерово Киев Кинешма Киров Кизляр Королев Кострома Красноармейск Краснодар Красногорск Красноярск Краснознаменск Курган Курск Кызыл Липецк Лобня Магадан Махачкала Майкоп Минеральные Воды Минск Могилев Москва Моздок Мозырь Мурманск Набережные Челны Нальчик Наро-Фоминск Нижневартовск Нижний Новгород Нижний Тагил Ногинск Норильск Новокузнецк Новосибирск Новоуральск Ноябрьск Обнинск Одинцово Омск Орехово-Зуево Орел Оренбург Ош Озёры Павлодар Пенза Пермь Петропавловск Подольск Полоцк Псков Пушкино Пятигорск Радужный Ростов-на-Дону Рязань Рыбинск Ржев Сальск Самара Самарканд Санкт-Петербург Саратов Сергиев Посад Серпухов Севастополь Северодвинск Щербинка Шымкент Слоним Смоленск Солигорск Солнечногорск Ставрополь Сургут Светлогорск Сыктывкар Сызрань Тамбов Ташкент Тбилиси Терек Тихорецк Тобольск Тольятти Томск Троицк Тула Тверь Тюмень Уфа Ухта Улан-Удэ Ульяновск Ургенч Усть-Каменогорск Вёшенская Видное Владимир Владивосток Волгодонск Волгоград Волжск Воркута Воронеж Якутск Ярославль Юдино Жлобин Жуковский Златоуст Зубова Поляна Звенигород
Тип обращения Вопрос Предложение Благодарность Жалоба
Тема обращения Поступление Трудоустройство Обучение Оплата Кадровый резерв Внеучебная деятельность Работа автоматических сервисов университета Другое
* Все поля обязательны для заполнения
Я даю согласие на обработку персональных данных, согласен на получение информационных рассылок от Университета «Синергия» и соглашаюсь c политикой конфиденциальности
Реальный вариант ЕГЭ по информатике 2021 с ответами Евгений Джобс. Вариант с основной волны 2021 по информатике 24 июня 2021 и разбор
ege2021-inf-real-var-jobs
Разбор
ege2021-inf-real-var-jobs-otvet
Смотрите также:
Демоверсия ЕГЭ 2022 по информатике с ответами