Задание 26 ЕГЭ информатика по теме «Обработка целочисленной информации с использованием сортировки»

На уроке рассмотрен материал для подготовки к ЕГЭ по информатике, разбор 26 задания. Объясняется тема о программной обработке целочисленной информации с использованием алгоритмов сортировки.

Дальше — больше… Задание 26 ЕГЭ информатика по теме «Обработка целочисленной информации с использованием сортировки»

Задание 24 ЕГЭ информатика по теме «Программная обработка символьной информации»

На уроке рассмотрен материал для подготовки к ЕГЭ по информатике, разбор 24 задания. Объясняется тема о программной обработке символьной информации.

Дальше — больше… Задание 24 ЕГЭ информатика по теме «Программная обработка символьной информации»

Задание 21 ЕГЭ информатика по теме «Дерево игры для выигрышной стратегии»

На уроке рассмотрен материал для подготовки к ЕГЭ по информатике, разбор 21 задания. Объясняется тема о поиске выигрышной стратегии и построения дерева игры.

Дальше — больше… Задание 21 ЕГЭ информатика по теме «Дерево игры для выигрышной стратегии»

Задание 20 ЕГЭ информатика по теме «Поиск выигрышной стратегии»

На уроке рассмотрен материал для подготовки к ЕГЭ по информатике, разбор 20 задания. Объясняется тема о поиске выигрышной стратегии.

Дальше — больше… Задание 20 ЕГЭ информатика по теме «Поиск выигрышной стратегии»

Задание 18 ЕГЭ информатика по теме «Обработка числовой информации в электронных таблицах»

На уроке рассмотрен материал для подготовки к ЕГЭ по информатике, разбор 18 задания. Объясняется тема об обработке числовой информации в электронных таблицах.

Дальше — больше… Задание 18 ЕГЭ информатика по теме «Обработка числовой информации в электронных таблицах»

Задание 17 ЕГЭ информатика по теме «Обработка целочисленной информации»

На уроке рассмотрен материал для подготовки к ЕГЭ по информатике, разбор 17 задания. Объясняется тема о программной обработке числовой информации.

Дальше — больше… Задание 17 ЕГЭ информатика по теме «Обработка целочисленной информации»

Задание 10 ЕГЭ информатика по теме «Поиск средствами ОС или текстового редактора»

На уроке рассмотрен материал для подготовки к ЕГЭ по информатике, разбор 10 задания. Объясняется тема о выполнении информационного поиска средствами ОС или текстового редактора.

Дальше — больше… Задание 10 ЕГЭ информатика по теме «Поиск средствами ОС или текстового редактора»

Задание 9 ЕГЭ информатика по теме «электронные таблицы»

На уроке рассмотрен материал для подготовки к ЕГЭ по информатике, разбор 9 задания. Объясняется тема о работе в электронных таблицах и базах данных.

Дальше — больше… Задание 9 ЕГЭ информатика по теме «электронные таблицы»

Демоверсия егэ информатика 2021 решение

группа vk вконтакте
*** ПЛЕЙЛИСТ КАНАЛА ЮТЬЮБ ***
 
ЕГЭ по информатике -> демоверсия ЕГЭ 2021
 
Скачать pdf демоверсии варианта ->
  

1.
1 задание. Демо ЕГЭ 2021 информатика, ФИПИ:

На рисунке схема дорог Н-ского района изображена в виде графа, в таблице содержатся сведения о протяжённости каждой из этих дорог (в километрах).
демо 2021 информатика 1 задание
Так как таблицу и схему рисовали независимо друг от друга, то нумерация населённых пунктов в таблице никак не связана с буквенными обозначениями на графе. Определите, какова протяжённость дороги из пункта Г в пункт Ж. В ответе запишите целое число – так, как оно указано в таблице.

Ответ: 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

В ответе запишите буквы в том порядке, в котором идут соответствующие им столбцы.

Ответ: zyxw
  
Видео


3.
3 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

Ниже представлены два фрагмента таблиц из базы данных о жителях микрорайона. Каждая строка таблицы 2 содержит информацию о ребёнке и об одном из его родителей. Информация представлена значением поля ID в соответствующей строке таблицы 1. Определите на основании приведённых данных ID женщины, ставшей матерью в наиболее молодом возрасте. При вычислении ответа учитывайте только информацию из приведённых фрагментов таблиц. Ниже представлены два фрагмента таблиц из базы данных о жителях микрорайона. Каждая строка таблицы 2 содержит информацию о ребёнке и об одном из его родителей. Информация представлена значением поля ID в соответствующей строке таблицы 1. Определите на основании приведённых данных ID женщины, ставшей матерью в наиболее молодом возрасте. При вычислении ответа учитывайте только информацию из приведённых фрагментов таблиц.

Ответ: 64
 


4.
4 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

Для кодирования некоторой последовательности, состоящей из букв Л, М, Н, П, Р, решили использовать неравномерный двоичный код, удовлетворяющий условию, что никакое кодовое слово не является началом другого кодового слова. Это условие обеспечивает возможность однозначной расшифровки закодированных сообщений. Для букв Л, М, Н использовали соответственно кодовые слова 00, 01, 11. Для двух оставшихся букв – П и Р – кодовые слова неизвестны.
Укажите кратчайшее возможное кодовое слово для буквы П, при котором код будет удовлетворять указанному условию. Если таких кодов несколько, укажите код с наименьшим числовым значением.

Ответ: 100
  
Видео


5.
5 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится двоичная запись числа N.
2. К этой записи дописываются справа ещё два разряда по следующему правилу:
  а) складываются все цифры двоичной записи числа N, и остаток от деления суммы на 2 дописывается в конец числа (справа).

Например, запись 11100 преобразуется в запись 111001;

 б) над этой записью производятся те же действия – справа дописывается остаток от деления суммы её цифр на 2.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R.
Укажите такое наименьшее число N, для которого результат работы данного алгоритма больше числа 77. В ответе это число запишите в десятичной системе счисления.

Ответ: 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;
}

Ответ: 21
  
Видео 


7.
7 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

Для хранения произвольного растрового изображения размером 128×320 пикселей отведено 20 Кбайт памяти без учёта размера заголовка файла. Для кодирования цвета каждого пикселя используется одинаковое количество бит, коды пикселей записываются в файл один за другим без промежутков.
Какое максимальное количество цветов можно использовать в изображении?

Ответ: 16
  
Разбор подобного задания смотрите на видео:
Видео 


8.
8 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

Игорь составляет таблицу кодовых слов для передачи сообщений, каждому сообщению соответствует своё кодовое слово. В качестве кодовых слов Игорь использует трёхбуквенные слова, в которых могут быть только буквы Ш, К, О, Л, А, причём буква К появляется ровно 1 раз. Каждая из других допустимых букв может встречаться в кодовом слове любое количество раз или не встречаться совсем. Сколько различных кодовых слов может использовать Игорь?

Ответ: 48
  
Разбор подобного задания смотрите на видео:
Видео 


9.
9 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

Задание выполняется с использованием прилагаемых файлов

Откройте файл электронной таблицы, содержащей вещественные числа – результаты ежечасного измерения температуры воздуха на протяжении трёх месяцев.
Найдите разность между максимальным значением температуры и её средним арифметическим значением.
В ответе запишите только целую часть получившегося числа.

Ответ: 14
  
Видео 


10.
10 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

Задание выполняется с использованием прилагаемых файлов

  
С помощью текстового редактора определите, сколько раз, не считая сносок, встречается слово «долг» или «Долг» в тексте романа в стихах А.С. Пушкина «Евгений Онегин». Другие формы слова «долг», такие как «долги», «долгами» и т.д., учитывать не следует. В ответе укажите только число.

Ответ: 1
  
Видео 


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)
  КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ

Ответ: 22
  
Разбор подобного задания смотрите в видео:
Видео  


13.
13 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

На рисунке представлена схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, З, И, К, Л, М. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой.
Сколько существует различных путей из города А в город М, проходящих через город В?
13 задание демо 2021

Ответ: 24
 
Разбор подобного задания смотрите в видео:
Видео


14.
14 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

Значение арифметического выражения: 497 + 721 – 7 – записали в системе счисления с основанием 7. Сколько цифр 6 содержится в этой записи?

Ответ: 13
 
Разбор подобного задания смотрите в видео:
Видео


15.
15 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m».
Для какого наибольшего натурального числа А формула

¬ДЕЛ(x, А) → (ДЕЛ(x, 6) → ¬ДЕЛ(x, 9))

тождественно истинна (то есть принимает значение 1 при любом натуральном значении переменной х)?

Ответ: 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
  
Видео  


17.
17 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

Рассматривается множество целых чисел, принадлежащих числовому отрезку [1016; 7937], которые делятся на 3 и не делятся на 7, 17, 19, 27. Найдите количество таких чисел и максимальное из них.
В ответе запишите два целых числа: сначала количество, затем максимальное число.

! Для выполнения этого задания можно написать программу или воспользоваться редактором электронных таблиц

Ответ: 1568 | 7935
 
Видео  
✍ Решение:

    Решение с использованием программирования на языке Паскаль:

    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.

Видео


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

Решение подобного задания смотрите на видео:  
Видео


20.
20 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

Для игры, описанной в предыдущем задании, найдите два таких значения S, при которых у Пети есть выигрышная стратегия, причём одновременно выполняются два условия:

  • Петя не может выиграть за один ход;
  • Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
  • Найденные значения запишите в ответе в порядке возрастания.

    Ответ: 31 | 34

    Решение подобного задания смотрите на видео:  
    Видео


    21.
    21 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

    Для игры, описанной в задании 19, найдите минимальное значение S, при котором одновременно выполняются два условия:

  • у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;
  • у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.
  • Ответ: 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
    

    26.
    26 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:
      

    Задание выполняется с использованием прилагаемых файлов

     
    Системный администратор раз в неделю создаёт архив пользовательских файлов. Однако объём диска, куда он помещает архив, может быть меньше, чем суммарный объём архивируемых файлов.
    Известно, какой объём занимает файл каждого пользователя.
    По заданной информации об объёме файлов пользователей и свободном объёме на архивном диске определите максимальное число пользователей, чьи файлы можно сохранить в архиве, а также максимальный размер имеющегося файла, который может быть сохранён в архиве, при условии, что сохранены файлы максимально возможного числа пользователей.

    Входные данные.
    В первой строке входного файла находятся два числа: S – размер свободного места на диске (натуральное число, не превышающее 10 000) и N – количество пользователей (натуральное число, не превышающее 1000). В следующих N строках находятся значения объёмов файлов каждого пользователя (все числа натуральные, не превышающие 100), каждое в отдельной строке.

    Запишите в ответе два числа: сначала наибольшее число пользователей, чьи файлы могут быть помещены в архив, затем максимальный размер имеющегося файла, который может быть сохранён в архиве, при условии, что сохранены файлы максимально возможного числа пользователей.

    Пример входного файла:

    100 4
    80
    30
    50
    40
    

    При таких исходных данных можно сохранить файлы максимум двух пользователей. Возможные объёмы этих двух файлов 30 и 40, 30 и 50 или 40 и 50. Наибольший объём файла из перечисленных пар – 50, поэтому ответ для приведённого примера:

    2 | 50
    

    Ответ: 568 | 50


    27.
    27 задание. Демоверсия варианта ЕГЭ по информатике 2021, ФИПИ:

    Задание выполняется с использованием прилагаемых файлов

    Имеется набор данных, состоящий из пар положительных целых чисел.
    Необходимо выбрать из каждой пары ровно одно число так, чтобы сумма всех выбранных чисел не делилась на 3 и при этом была максимально возможной. Гарантируется, что искомую сумму получить можно.
    Программа должна напечатать одно число – максимально возможную сумму, соответствующую условиям задачи.
    Входные данные.
    Даны два входных файла (файл A и файл B), каждый из которых содержит в первой строке количество пар N (1 ≤ N ≤ 100000). Каждая из следующих N строк содержит два натуральных числа, не превышающих 10 000.

    Пример организации исходных данных во входном файле:

    6
    1 3
    5 12
    6 9
    5 4
    3 3
    1 1

    Для указанных входных данных значением искомой суммы должно быть число 32.

    В ответе укажите два числа: сначала значение искомой суммы для файла А, затем для файла B.

    Предупреждение: для обработки файла B не следует использовать переборный алгоритм, вычисляющий сумму для всех возможных вариантов, поскольку написанная по такому алгоритму программа будет выполняться слишком долго.

    Ответ: 127127 | 399762080


     
    ЕГЭ по информатике -> демоверсия ЕГЭ 2021

    Досрочный ЕГЭ по информатике 2020

    группа vk вконтакте
    *** ПЛЕЙЛИСТ КАНАЛА ЮТЬЮБ ***
     
    ЕГЭ по информатике -> досрочный ЕГЭ 2020
     
    Скачать pdf досрочного варианта ->
      

    1.
    1 задание. Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:

    Сколько единиц в двоичной записи шестнадцатеричного числа E1F0?

    Ответ: 8

    Видео


    2.
    2 задание. Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:

    Миша заполнял таблицу истинности функции

    (x ∧ ¬y) ∨ (x ≡ z) ∨ ¬w
    но успел заполнить лишь фрагмент из трёх различных её строк, даже не указав, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.

    Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных w, x, y, z.

    Перем.1 Перем.2 Перем.3 Перем.4 Функция
    ??? ??? ??? ??? F
    0 1 1 0 0
    0 0
    1 0 1 0

    В ответе запишите буквы в том порядке, в котором идут соответствующие им столбцы.

    Ответ: xwzy
      
    Видео


    3.
    3 задание. Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:

    На рисунке слева изображена схема дорог N-ского района. В таблице звёздочкой обозначено наличие дороги из одного населённого пункта в другой. Отсутствие звёздочки означает, что такой дороги нет.

    Каждому населённому пункту на схеме соответствует его номер в таблице, но неизвестно, какой именно номер. Определите, какие номера населённых пунктов в таблице могут соответствовать населённым пунктам E и G на схеме. В ответе запишите эти два номера в возрастающем порядке без пробелов и знаков препинания.

    Ответ: 45
     


    4.
    4 задание. Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:
    Ниже представлены два фрагмента таблиц из базы данных о жителях микрорайона. Каждая строка таблицы 2 содержит информацию о ребёнке и об одном из его родителей. Информация представлена значением поля ID в соответствующей строке таблицы 1.

    Определите на основании приведённых данных, у скольких детей на момент их рождения матерям было меньше 27 полных лет. При вычислении ответа учитывайте только информацию из приведённых фрагментов таблиц.

    Ответ: 4
      


    5.
    5 задание. Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:
    По каналу связи передаются сообщения, содержащие только четыре буквы:
    А, Б, В, Г
    для передачи используется двоичный код, удовлетворяющий условию Фано.
    Для букв Б, В, Г используются такие кодовые слова:

    Б – 101
    В – 110 
    Г – 0
    

    Укажите кратчайшее кодовое слово для буквы А, при котором код будет допускать однозначное декодирование.
    Если таких кодов несколько, укажите код с наибольшим числовым значением.

    Ответ: 111
      
    Видео  


    6.
    6 задание. Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:
    На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число следующим образом.
    1) Строится двоичная запись числа N.
    2) К этой записи дописываются справа ещё два разряда по следующему правилу:
      — если N чётное, в конец числа (справа) дописываются два нуля, в противном случае справа дописываются две единицы.
     

    Например, двоичная запись 1001 числа 9 будет преобразована в 100111.

      
    Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью числа – результата работы данного алгоритма.

    Укажите минимальное число N, для которого результат работы алгоритма будет больше 134. В ответе это число запишите в десятичной системе счисления.

    Ответ: 33
      
    Видео 


    7.
    7 задание. Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:
    Дан фрагмент электронной таблицы. Из ячейки A3 в ячейку C4 была скопирована формула. При копировании адреса ячеек в формуле автоматически изменились.

    Какова сумма числовых значений формул в ячейках A3 и C4?

    Ответ: 15
      
    Видео 


    8.
    8 задание. Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:
    Запишите число, которое будет напечатано в результате выполнения следующей программы. Для Вашего удобства программа представлена на пяти языках программирования.
      
    Паскаль:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    
    var s, n: integer;
    begin
     s := 175;
     n := 0;
     while s + n < 325 do
     begin
       s := s - 10;
       n := n + 30
     end;
     writeln(s)
    end.
    Бейсик:

    DIM S, N AS INTEGER
    S = 175
    N = 0
    WHILE S + N < 325
      S = S - 10
      N = N + 30
    WEND
    PRINT S
    Python:

    s = 175
    n = 0
    while s + n < 325:
      s = s - 10
      n = n + 30
    print(s)
    С++:

    #include <iostream>
    using namespace std;
    int main() {
     int s = 175, n = 0;
     while (s + n < 325) {
       s = s - 10;
       n = n + 30;
     }
     cout << s << endl;
     return 0;
    }

    Ответ: 95
      
    Видео 


    9.
    9 задание. Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:
    Музыкальный фрагмент был записан в формате квадро (четырёхканальная запись), оцифрован и сохранён в виде файла без использования сжатия данных. Размер полученного файла без учёта размера заголовка файла – 12 Мбайт. Затем тот же музыкальный фрагмент был записан повторно в формате моно и оцифрован с разрешением в 2 раза выше и частотой дискретизации в 1,5 раза меньше, чем в первый раз. Сжатие данных не производилось.

    Укажите размер в Мбайт файла, полученного при повторной записи. В ответе запишите только целое число, единицу измерения писать не нужно. Искомый объём не учитывает размера заголовка файла

    Ответ: 4
      
    Видео 


    10.
    10 задание. Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:
    Вася составляет 5-буквенные слова, в которых есть только буквы
      В, О, Л, К
    причём буква В используется в каждом слове ровно 1 раз. Каждая из других допустимых букв может встречаться в слове любое количество раз или не встречаться совсем. Словом считается любая допустимая последовательность букв, не обязательно осмысленная.

    Сколько существует таких слов, которые может написать Вася?

    Ответ: 405
      
    Видео 



    11.
    11 задание. Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:

    Дан рекурсивный алгоритм F.
    Запишите подряд без пробелов и разделителей все числа, которые будут выведены на экран при выполнении вызова F(7). Числа должны быть записаны в том же порядке, в котором они выводятся на экран.
    Паскаль:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    procedure F(n: integer);
    begin
     if n > 0 then
     begin
       write(n);
       F(n - 3);
       F(n div 2)
     end
    end;
    Бейсик:

    SUB F(n)
     IF n > 0 THEN
       PRINT n,
       F(n - 3)
       F(n \ 2)
     END IF
    END SUB
    Python:

    def F(n):
     if n > 0:
       print(n)
       F(n - 3)
       F(n // 2)
    С++:

    void F(int n){
     if (n > 0){
       std::cout << n;
       F(n - 3);
       F(n / 2);
     }
    }

    Ответ: 7412131
     
    Видео  


    12.
    12 задание. 2020 г, ФИПИ:

    Для узла с IP-адресом 117.191.176.37 адрес сети равен 117.191.160.0.
    Чему равен третий слева байт маски?
    Ответ запишите в виде десятичного числа.

    Ответ: 224
      
    Видео  


    13.
    13 задание. 2020 г, ФИПИ:

    При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий из 25 символов и содержащий только символы из 7-символьного набора: С, Д, А, М, Е, Г, Э. В базе данных для хранения сведений о каждом пользователе отведено одинаковое и минимально возможное целое число байт. При этом используют посимвольное кодирование паролей, все символы кодируют одинаковым и минимально возможным количеством бит. Кроме собственно пароля, для каждого пользователя в системе хранятся дополнительные сведения, для чего выделено целое число байт; это число одно и то же для всех пользователей.
    Для хранения сведений о 50 пользователях потребовалось 1200 байт. Сколько байт выделено для хранения дополнительных сведений об одном пользователе? В ответе запишите только целое число – количество байт

    Ответ: 14
     


    14.
    14 задание. 2020 г, ФИПИ:

    На вход приведённой ниже программе поступает строка, начинающаяся с символа «>», а затем содержащая 10 цифр 1, 20 цифр 2 и 30 цифр 3, расположенных в произвольном порядке.
    Определите сумму числовых значений цифр строки, получившейся в результате выполнения программы.

    Так, например, если результат работы программы представлял бы собой строку, состоящую из 50 цифр 4, то верным ответом было бы число 200.
    НАЧАЛО
    ПОКА нашлось (>1) ИЛИ нашлось (>2) ИЛИ нашлось (>3)
     ЕСЛИ нашлось (>1)
       ТО заменить (>1, 22>)
     КОНЕЦ ЕСЛИ
     ЕСЛИ нашлось (>2)
       ТО заменить (>2, 2>)
     КОНЕЦ ЕСЛИ
     ЕСЛИ нашлось (>3)
       ТО заменить (>3, 1>)
     КОНЕЦ ЕСЛИ
    КОНЕЦ ПОКА
    КОНЕЦ 
    

    Ответ: 110
     
    Видео


    15.
    15 задание. 2020 г, ФИПИ:

    На рисунке представлена схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, З, И, К, Л, М. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой.
    Какова длина самого длинного пути из города А в город М?
    Длиной пути считать количество дорог, составляющих этот путь.

    Ответ: 9
     


    16.
    16 задание. 2020 г, ФИПИ:

    Значение арифметического выражения:

    911 × 320 – 39 – 27 

    записали в системе счисления с основанием 3.
    Сколько цифр 2 содержится в этой записи?

    Ответ: 38
      
    Видео  


    17.
    17 задание. 2020 г, ФИПИ:

    В таблице приведены запросы и количество найденных по ним страниц некоторого сегмента сети Интернет.

    Какое количество страниц (в сотнях тысяч) будет найдено по запросу Физика & Квант ?
    Считается, что все запросы выполнялись практически одновременно, так что набор страниц, содержащих все искомые слова, не изменялся за время выполнения запросов.

    Ответ: 12
     
    Видео  


    18.
    18 задание. 2020 г, ФИПИ:

    Для какого наименьшего целого неотрицательного числа А выражение

    (x + 2y < A) ∨ (y > x) ∨ (x > 20)

    тождественно истинно, т.е. принимает значение 1 при любых целых неотрицательных x и y?

    Ответ: 61
     
    Видео


    19.
    19 задание. 2020 г, ФИПИ:

    В программе используется одномерный целочисленный массив A с индексами от 0 до 11. Значения элементов массива A[i] приведены в таблице:

    Определите значение переменной s после выполнения следующего фрагмента этой программы.
    Паскаль:

    1
    2
    3
    4
    5
    6
    7
    
    s := 0;
    n := 1;
    for i := 0 to 11 do
     if A[i] > A[n] then
       s := s + A[i] + i
     else
       A[n] := A[i];
    Бейсик:

    s = 0
    n = 1
    FOR i = 0 TO 11
     IF A(i) > A(n) THEN
       s = s + A(i) + i
     ELSE
       A(n) = A(i)
     END IF
    NEXT i
    Python:

    s = 0
    n = 1
    for i in range(0, 12):
     if A[i] > A[n]:
       s += A[i] + i
     else:
       A[n] = A[i]
    С++:

    s = 0;
    n = 1;
    for (int i = 0; i < 12; i++)
    {
      if (A[i] > A[n])
        s += A[i] + i;
      else
        A[n] = A[i];
    }

    Ответ: 202
     
    Видео


    20.
    20 задание. Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:

    Ниже на пяти языках программирования записан алгоритм. Получив на вход натуральное десятичное число x, этот алгоритм печатает два числа: L и M.

    Укажите наибольшее число x, при вводе которого алгоритм выводит сначала 2, а потом 3.

    Паскаль:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    
    var
        x, L, M: integer;
      begin
        readln(x); 
        L := 0;
        M := 0;
        while x > 0 do
        begin
          M := M + 1;
          if x mod 2 <> 0 then
            L := L + x mod 8; 
          x := x div 8
        end;
        writeln(L); 
        writeln(M) 
      end.
    Бейсик:

    DIM X, L, M AS INTEGER
    INPUT X
    L = 0
    M = 0
    WHILE X > 0
      M = M + 1
      IF X MOD 2 <> 0 THEN
        L = L + X MOD 8
      END IF
      X = X \ 8
    WEND
    PRINT L
    PRINT M
    Python:

    x = int(input())
    L = 0
    M = 0
    while x > 0:
     M = M + 1
     if x % 2 != 0:
       L = L + x % 8
     x = x // 8
    print(L)
    print(M)
    С++:

    #include <iostream>
    using namespace std;
    int main(){
     int x, L, M;
     cin >> x;
     L = 0;
     M = 0;
     while (x > 0) {
       M = M + 1;
       if(x % 2 != 0) {
         L = L + x % 8;
       }
       x = x / 8;
     }
     cout << L << endl << M << endl;
     return 0;
    }

    Ответ: 393
      
    Видео


    21.
    21 задание. Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:

    Определите наибольшее значение входной переменной k, при котором программа выдаёт тот же ответ, что и при входном значении k = 27.
    Для Вашего удобства программа приведена на нескольких языках программирования.

    Паскаль:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    
    var
     k, i : longint;
    function F(n: longint): longint;
    begin
      F := n * n * n;
    end;
    function G(n: longint): longint;
    begin
      G := 2 * n + 2;
    end;
    begin
     readln(k);
     i := 1;
     while F(i) < G(k) do
        i := i + 1;
     writeln(i)
    end.
    Бейсик:

    DIM K, I AS LONG
    INPUT K
    I = 1
    WHILE F(I) < G(K)
      I = I + 1
    WEND
    PRINT I
    FUNCTION F(N)
      F = N * N * N
    END FUNCTION
    FUNCTION G(N)
      G = 2 * N + 2
    END FUNCTION
    Python:

    def F(n):
     return n*n*n
    def G(n):
     return 2 * n + 2
    k = int(input())
    i = 1
    while F(i) < G(k):
      i+=1
    print (i)
    С++:

    #include <iostream>
    using namespace std;
    long F(long n) {
     return n * n * n;
    }
    long G(long n) {
     return 2 * n + 2;
    }
    int main()
    {
     long k, i;
     cin >> k;
     i = 1;
     while(F(i) < G(k))
       i++;
     cout << i;
     return 0;
    }

    Ответ: 31
     
    Видео


    22.
    22 задание. 2020 г, ФИПИ:

    Исполнитель Вычислитель преобразует число на экране.
    У исполнителя есть две команды, которым присвоены номера:
    1. Прибавить 1
    2. Умножить на 2
    Первая команда увеличивает число на экране на 1, вторая умножает его на 2.
    Программа для Вычислителя – это последовательность команд.

    Сколько существует программ, для которых при исходном числе 1 результатом является число 21 и при этом траектория вычислений содержит число 10 и не содержит числа 18?

    Траектория вычислений программы – это последовательность результатов выполнения всех команд программы. Например, для программы 121 при исходном числе 7 траектория будет состоять из чисел 8, 16, 17.

    Ответ: 14
      


    23.
    23 задание. 2020 г, ФИПИ:

    Сколько существует различных наборов значений логических переменных x1, x2, … x7, y1, y2, … y7, которые удовлетворяют всем перечисленным ниже условиям?

    x1 → y1 = 1
    (x2 → (x1 ∧ y2)) ∧ (y2 → y1) = 1
    (x3 → (x2 ∧ y3)) ∧ (y3 → y2) = 1
    …
    (x7 → (x6 ∧ y7)) ∧ (y7 → y6) = 1
    

    В ответе не нужно перечислять все различные наборы значений переменных x1, x2, … x7, y1, y2, … y7, при которых выполнена данная система равенств. В качестве ответа Вам нужно указать количество таких наборов.

    Ответ: 36
      


    24.
    24 задание. 2020 г, ФИПИ:

    Требовалось написать программу, которая получает на вход натуральное число N, не превосходящее 109, и выводит число, равное количеству цифр 4 в десятичной записи числа N. Программист написал программу неправильно. Ниже эта написанная им программа для Вашего удобства приведена на нескольких языках программирования.
    Паскаль:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    
    var N: longint;
     R, d: integer;
    begin
     readln(N);
     R := 0;
     while N > 0 do begin
       d := N mod 10;
       if d <> 4 then
          R := R + d;
       N := N div 10;
     end;
     writeln(R);
    end.
    Бейсик:

    DIM N AS LONG
    DIM R, d AS INTEGER
    INPUT N
    R = 0
    WHILE N > 0
     d = N MOD 10
     IF d <> 4 THEN
        R = R + d
     END IF
     N = N \ 10
    WEND
    PRINT R
    END
    Python:

    N = int(input())
    R = 0
    while N > 0:
     d = N % 10
     if d != 4:
        R = R + d
     N = N // 10
    print(R)
    С++:

    #include <iostream>
    using namespace std;
    int main()
    {
     long int N;
     int R, d;
     cin >> N;
     R = 0;
     while (N > 0) {
      d = N % 10;
      if (d != 4) {
         R = R + d;
      }
      N = N / 10;
     }
     cout << R << endl;
     return 0;
    }
      Последовательно выполните следующее:

    1. Напишите, что выведет эта программа при вводе числа 241.
    2. Приведите пример входного числа N, при котором приведённая программа, несмотря на ошибки, выдаёт верный ответ.
    3. Найдите допущенные программистом ошибки и исправьте их:
    4. Исправление ошибки должно затрагивать только строку, в которой находится ошибка. Для каждой ошибки:

    5. 1) выпишите строку, в которой сделана ошибка;
    6. 2) укажите, как исправить ошибку, т.е. приведите правильный вариант строки.
    7. Известно, что в тексте программы нужно исправить не более двух строк так, чтобы она стала работать правильно.
      Достаточно указать ошибки и способ их исправления для одного языка программирования.
      Обратите внимание на то, что требуется найти ошибки в имеющейся программе, а не написать свою, возможно, использующую другой алгоритм решения.

    ✍ Решение:

    1. Программа выведет число 3.
    2. Примечание для эксперта. Программа выводит сумму цифр, отличных от 4.

    3. Программа выдаёт правильный ответ, например, при N = 244.
    4. В программе есть две ошибки:
    5. Первая ошибка: неверная проверка условия увеличения счетчика – переменной R.
      Строка с ошибкой:

      if d <> 4 then

      Верное исправление:

      if d = 4 then

      Вторая ошибка: неверно увеличивается значение переменной R.
      Строка с ошибкой:

      R := R + d;

      Верное исправление:

      R := R + 1;

      
    Видео


    25.
    25 задание. 2020 г, ФИПИ:

    Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0 до 10 000 включительно. Опишите на одном из языков программирования алгоритм, который находит количество элементов массива, больших 100 и при этом не кратных 4, а затем заменяет каждый такой элемент на число, равное найденному количеству.
    Гарантируется, что хотя бы один такой элемент в массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент выводится с новой строчки.
      

    Например, для исходного массива из шести элементов:

    141
    256
    92
    148
    511
    4

    программа должна вывести следующий массив:

    2
    256
    92
    148
    2
    4

    Исходные данные объявлены так, как показано ниже на примерах для нескольких языков программирования. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.

    Паскаль:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    const
     N = 30;
    var
     a: array [1..N] of longint;
     i, j, k: longint;
    begin
     for i := 1 to N do
        readln(a[i]);
     ...
    end.
    Бейсик:

    CONST N AS INTEGER = 30
    DIM A (1 TO N) AS LONG
    DIM I AS LONG,
      J AS LONG,
      K AS LONG
    FOR I = 1 TO N
       INPUT A(I)
    NEXT I
    ...
    END
    Python:

    # допускается также
    # использовать две
    # целочисленные переменные j и k
    a = []
    n = 30
    for i in range(0, n):
       a.append(int(input()))
    ...
    С++:

    #include <iostream>
    using namespace std;
    const int N = 30;
    int main() {
     long a[N];
     long i, j, k;
     for (i = 0; i < N; i++)
        cin >> a[i];
     ...
     return 0;
    }
    В качестве ответа Вам необходимо привести фрагмент программы, который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например Free Pascal 2.6). В этом случае Вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии.

    ✍ Решение:

      Паскаль:

      k := 0;
      for i := 1 to N do
         if (a[i] > 100) and (a[i] mod 4 <> 0) then
             k := k + 1;
      for i := 1 to N do begin
         if (a[i] > 100) and (a[i] mod 4 <> 0) then
             a[i] := k;
         writeln(a[i]);
      end;
      Бейсик:

      K = 0
      FOR I = 1 TO N
         IF A(I) > 100 AND A(I) MOD 4 <> 0 THEN
            K = K + 1
         END IF
      NEXT I
      FOR I = 1 TO N
         IF A(I) > 100 AND A(I) MOD 4 <> 0 THEN
            A(I) = K
         END IF
         PRINT A(I)
      NEXT I
      Python:

      k = 0
      for i in range(0, n):
        if (a[i] > 100 and a[i] % 4 != 0):
          k = k + 1
      for i in range(0, n):
        if (a[i] > 100 and a[i] % 4 != 0):
          a[i] = k
        print(a[i])
      С++:

      k = 0;
      for (i = 0; i < N; i++)
        if (a[i] > 100 && a[i] % 4 != 0)
           k++;
      for (i = 0; i < N; i++) {
        if (a[i] > 100 && a[i] % 4 != 0)
           a[i] = k;
        cout << a[i] << endl;
      }

      


    26.
    26 задание. 2020 г, ФИПИ:

    Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в кучу один или четыре камня либо увеличить количество камней в куче в пять раз.

    Например, имея кучу из 15 камней, за один ход можно получить кучу из 16, 19 или 75 камней.

    У каждого игрока, чтобы делать ходы, есть неограниченное количество камней.
    Игра завершается в тот момент, когда количество камней в куче становится не менее 63.
    Победителем считается игрок, сделавший последний ход, т.е. первым получивший кучу, в которой будет 63 или больше камней.
    В начальный момент в куче было S камней; 1 ≤ S ≤ 62.

    Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока – значит описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника. В описание выигрышной стратегии не следует включать ходы играющего по этой стратегии игрока, не являющиеся для него безусловно выигрышными, т.е. не являющиеся выигрышными независимо от игры противника.

     
    Выполните следующие задания. Во всех случаях обосновывайте свой ответ.
      
    Задание 1
    а) Укажите все такие значения числа S, при которых Петя может выиграть за один ход.
    б) Укажите такое значение S, при котором Петя не может выиграть за один ход, но при любом ходе Пети Ваня может выиграть своим первым ходом. Опишите выигрышную стратегию Вани.
     
    Задание 2
    Укажите два таких значения S, при которых у Пети есть выигрышная стратегия, причём одновременно выполняются два условия:

  • – Петя не может выиграть за один ход;
  • – Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
  • Для каждого указанного значения S опишите выигрышную стратегию Пети.
      
    Задание 3
    Укажите значение S, при котором одновременно выполняются два условия:

  • – у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;
  • – у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.
  • Для указанного значения S опишите выигрышную стратегию Вани.
    Постройте дерево всех партий, возможных при этой выигрышной стратегии Вани (в виде рисунка или таблицы). На рёбрах дерева указывайте, кто делает ход; в узлах – количество камней в куче.
    Дерево не должно содержать партии, невозможные при реализации выигрывающим игроком своей выигрышной стратегии. Например, полное дерево игры не является верным ответом на это задание.

    ✍ Решение:

    1. Задание 1
    2. а) Петя может выиграть, если S = 13, … 62.
      б) Ваня может выиграть первым ходом (как бы ни играл Петя), если исходно в куче S = 12 камней. Тогда после первого хода Пети в куче будет 13, 16 или 60 камней. Во всех случаях Ваня увеличивает количество камней в 5 раз и выигрывает за один ход.
      Замечание для проверяющего. В задаче не требуется указать все выигрышные стратегии. Если в работе выпускника, как в приведённом примере, просто указано, что Ваня всегда увеличивает в 5 раз количество камней, – это не ошибка.

    3. Задание 2
    4. Возможные значения S: 8, 11. В этих случаях Петя, очевидно, не может выиграть первым ходом. Однако он может получить кучу из 12 камней. Эта позиция разобрана в п. . В ней игрок, который будет ходить (теперь это Ваня), выиграть не может, а его противник (т.е. Петя) следующим ходом выиграет.

    5. Задание 3
    6. Возможные значения S: 7, 10.
      Например, для S = 7 после первого хода Пети в куче будет 8, 11 или 35 камней. Если в куче станет 35 камней, Ваня увеличит количество камней в 5 раз и выиграет первым ходом. Ситуация, когда в куче 8 или 11 камней, разобрана в п. 2. В этой ситуации игрок, который будет ходить (теперь это Ваня), выигрывает своим вторым ходом.
       
      Ниже представлено дерево возможных партий (и только их) при описанной стратегии Вани для значения S = 7. При выбранной стратегии на последнем ходе Ваня увеличивает в 5 раз количество камней, хотя возможны и другие выигрышные стратегии. Для второго возможного
      значения дерево строится аналогично. Заключительные позиции (в них выигрывает Ваня) подчёркнуты.
      Примечание для проверяющего. Здесь для полноты картины указаны два возможных значения S. По условию задачи достаточно указать одно из них

      


    27.
    27 задание. 2020 г, ФИПИ (1 вариант):

    Дана последовательность N целых положительных чисел. Рассматриваются все пары элементов последовательности, разность которых чётна, и в этих парах, по крайней мере, одно из чисел пары делится на 17. Порядок элементов в паре неважен. Среди всех таких пар нужно найти и вывести пару с максимальной суммой элементов. Если одинаковую максимальную сумму имеет несколько пар, можно вывести любую из них. Если подходящих пар в последовательности нет, нужно вывести два нуля.
      
    Описание входных и выходных данных
    В первой строке входных данных задаётся количество чисел N (2 ≤ N ≤ 10 000). В каждой из последующих N строк записано одно натуральное число, не превышающее 10 000.
    Пример входных данных:

    5
    34
    12
    51
    52
    51

    Пример выходных данных для приведённого выше примера входных данных:

    51 51
    Пояснение. Из данных пяти чисел можно составить три различные пары, удовлетворяющие условию: (34, 12), (34, 52), (51, 51). Наибольшая сумма получается в паре (51, 51). Эта пара допустима, так как число 51 встречается в исходной последовательности дважды.

    Напишите эффективную по времени и памяти программу для решения этой задачи.

    Программа считается эффективной по времени, если при увеличении количества исходных чисел N в k раз время работы программы увеличивается не более чем в k раз.
    Программа считается эффективной по памяти, если память, необходимая для хранения всех переменных программы, не превышает 1 Кбайт и не увеличивается с ростом N.

    Максимальная оценка за правильную (не содержащую синтаксических ошибок и дающую правильный ответ при любых допустимых входных данных) программу, эффективную по времени и памяти, – 4 балла.
    Максимальная оценка за правильную программу, эффективную только по времени или только по памяти, – 3 балла.
    Максимальная оценка за правильную программу, не удовлетворяющую требованиям эффективности, – 2 балла.

    Вы можете сдать одну или две программы решения задачи. Если Вы сдадите две программы, каждая из них будет оцениваться независимо от другой, итоговой станет бо́льшая из двух оценок.
    Перед текстом программы кратко опишите алгоритм решения. Укажите использованный язык программирования и его версию.

    ✍ Решение:

    • Программа эффективна по времени и памяти
    • Паскаль (PascalABC):

      const
        p = 17;
       
      var
        N: integer; {количество чисел}
        a: integer; {очередное число}
        m0, m1: integer; {чётный и нечётный максимумы}
        mp0, mp1: integer;  {чётный и нечётный максимумы, кратные p}
        x, y: integer; {ответ – пара чисел}
        i: integer;
       
      begin
        m0 := 0; m1 := 0;
        mp0 := 0; mp1 := 0;
        x := 0; y := 0;
        readln(N);
        for i := 1 to N do
        begin
          readln(a);   // 5 34 12 51 52 51  // 4 51 68 3 2  // 4 85 51 68 2
           // для четных
          if a mod 2 = 0 then  
          begin
            // если кратное
            if (a mod p = 0)and(a>=mp0) then 
              begin
                if mp0>m0 then
                  m0:=mp0;
                mp0:=a
              end     
              else if a>m0 then 
                m0 := a;
           end
           else 
              begin
          // для нечетных
              if (a mod p = 0)and(a>=mp1) then 
                begin 
                  if mp1>m1 then 
                    m1:=mp1;
                  mp1 := a;
                end
                else if a>m1 then
                  m1:=a;
               end;  
        end;
       //  writeln('mp0=', mp0, 'm0=', m0);
        if (mp0 > 0) and (m0 > 0) then
        begin
          x := mp0; y := m0; 
        end; 
       // writeln('mp1=', mp1, 'm1=', m1);
        if (mp1 > 0) and (m1 > 0) and (mp1 + m1 > x + y) then
        begin
          x := mp1; 
          y := m1;
        end;
        writeln('=', x, ' ', y)
      end.
      Python:

      p = 17
      m0 = m1 = mp0 = mp1 = 0
      N = int(input())
      for i in range(N):
      	 a = int(input())
      	 if a % 2 == 0:
      		 if a % p == 0 and a >= mp0:
      			 if mp0 > m0: m0 = mp0
      			 mp0 = a
      		 elif a > m0: m0 = a
      	 else:
      		 if a % p == 0 and a >= mp1:
      			 if mp1 > m1: m1 = mp1
      			 mp1 = a
      		 elif a > m1: m1 = a
      x = y = 0
      if mp0 > 0 and m0 > 0:
      	x = mp0; y = m0
      if mp1 > 0 and m1 > 0 and mp1 + m1 > x + y:
      	x = mp1; y = m1
      print(x,y)

      Ещё один путь решения – записать всю последовательность в массив и анализировать её в несколько проходов. Ниже приводится реализующая такой алгоритм программа на языке C++. В этой программе массив с исходными данными обрабатывается два раза: на первом проходе находятся индексы максимального чётного и нечётного элементов, кратных p, на втором проходе – общие чётный и нечётный максимумы. При этом элементы, выделенные как кратные при первом проходе, во время второго прохода из сравнения исключаются. Такая программа эффективна по времени (несмотря на повторную обработку массива, общее время работы пропорционально N), но неэффективна по памяти. Максимальная оценка за такую программу при отсутствии в ней синтаксических и содержательных ошибок – 3 балла.

    • Правильная программа на языке C++, эффективная только по времени
    • С++:

      #include <iostream>
      using namespace std;
      int main() {
       const int p = 17; // делитель
       int N; cin >> N; // количество элементов
       int a[N]; // элементы последовательности
       for (int i = 0; i < N; ++i) cin >> a[i];
       int imp0 = -1, imp1 = -1; //индексы максимумов, кратных p
       for (int i = 0; i < N; ++i) {
      	if (a[i] % p == 0) {
      		 if (a[i] % 2 == 0) {
      			if (imp0 == -1 || a[i] > a[imp0]) imp0 = i;
      		}
      		else {
      			if (imp1 == -1 || a[i] > a[imp1]) imp1 = i;
      		}
      	}
       }
       int im0 = -1, im1 = -1; // индексы общих максимумов
       for (int i = 0; i < N; ++i) {
      	 if (i != imp0 && i != imp1) {
      		 if (a[i] % 2 == 0) {
      			if (im0 == -1 || a[i] > a[im0]) im0 = i;
      		 }
      		 else {
      			if (im1 == -1 || a[i] > a[im1]) im1 = i;
      		 }
      	 }
       }
       int x = 0, y = 0; // пара чисел для ответа
       if (imp0 != -1 && im0 != -1) {
      	x = a[imp0]; y = a[im0];
       }
       if (imp1 != -1 && im1 != -1 && a[imp1] + a[im1] > x + y) {
      	x = a[imp1]; y = a[im1];
       }
       cout << x << ' ' << y << endl;
       return 0;
      }
    • Правильная, но неэффективная программа на языке Паскаль
    • Паскаль:

      const
        p = 17;
      var
        N: integer; {количество чисел}
        a: array [1..10000] of integer; {исходные данные}
        x, y: integer; {ответ – пара чисел}
        i, j: integer;
      begin
        readln(N);
        for i := 1 to N do readln(a[i]);
        x := 0; y := 0;
        for i := 1 to N - 1 do
        begin
          for j := i + 1 to N do
          begin
            if ((a[i] - a[j]) mod 2 = 0) and
                  ((a[i] mod p = 0) or (a[j] mod p = 0)) and
            (a[i] + a[j] > x + y)
            then
            begin
              x := a[i]; y := a[j]
            end
          end
        end;
        writeln(x, ' ', y)
      end.

      
    Видео


     
    ЕГЭ по информатике -> досрочный ЕГЭ 2020

    Вставить формулу как
    Блок
    Строка
    Дополнительные настройки
    Цвет формулы
    Цвет текста
    #333333
    Используйте LaTeX для набора формулы
    Предпросмотр
    \({}\)
    Формула не набрана
    Вставить