СДАМ ГИА: РЕШУ ЕГЭ
Образовательный портал для подготовки к экзаменам
Информатика
≡ информатика
сайты - меню - вход - новости


Вариант № 4718218

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


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


Версия для печати и копирования в MS Word
Времени прошло:0:00:00
Времени осталось:3.9166666666666665:55:00
1
Задание 1 № 136

Переведите в двоичную систему десятичное число 99.


Ответ:

2
Задание 2 № 9353

Логическая функция F задаётся выражением (¬z)∧xxy. Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных x, y, z.

 

Перем. 1Перем. 2Перем. 3Функция
?????????F
0000
0011
0100
0111
1000
1010
1100
1111

 

В ответе напишите буквы x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала – буква, соответствующая 1-му столбцу; затем – буква, соответствующая 2-му столбцу; затем – буква, соответствующая 3-му столбцу). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно. Пример. Пусть задано выражение xy, зависящее от двух переменных x и y, и таблица истинности:

 

Перем. 1Перем. 2Функция
??????F
001
010
101
111

 

Тогда 1-му столбцу соответствует переменная y, а 2-му столбцу соответствует переменная x. В ответе нужно написать: yx.


Ответ:

3
Задание 3 № 6484

Между населёнными пунктами A, B, C, D, E, F построены дороги, протяжённость которых приведена в таблице. (Отсутствие числа в таблице означает, что прямой дороги между пунктами нет.)

 

ABCDEF
A315
B325
C22
D5226
E25
F1565

 

Определите длину кратчайшего пути между пунктами A и F (при условии, что передвигаться можно только по построенным дорогам).


Ответ:

4
Задание 4 № 5861

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

 

Пояснение: племянницей считается дочь брата или сестры.

 

Таблица 1
IDФамилия_И.О.Пол
16Окуло И.М.Ж
26Котий А.В.М
27Котий В.А.М
28Котий В.В.М
36Брамс Т.А.Ж
37Брамс Б.Г.Ж
38Брамс Г.Г.М
46Щука А.С.Ж
47Щука В.А.М
48Ващенко К.Г.Ж
49Ващенко И.К.М
56Рисс Н.В.Ж
66Мирон Г.В.Ж

Таблица 2
ID_РодителяID_Ребенка
2627
4627
2728
6628
2636
4636
3637
3837
1638
3648
3848
2756
6656


Ответ:

5
Задание 5 № 10379

По каналу связи передаются сообщения, содержащие только буквы А, Б, В, Г, Д, Е. Для передачи используется неравномерный двоичный код, удовлетворяющий условию Фано; для букв A, Б, В используются такие кодовые слова: А — 0, Б — 101, В — 110.

Какова наименьшая возможная суммарная длина всех кодовых слов? Примечание. Условие Фано означает, что ни одно кодовое слово не является началом другого кодового слова. Коды, удовлетворяющие условию Фано, допускают однозначное декодирование.


Ответ:

6
Задание 6 № 3412

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

вниз

влево

вниз

влево

вверх

вправо

вверх

Укажите наименьшее возможное число команд в программе, переводящей Робота из той же начальной клетки в ту же конечную.


Ответ:

7
Задание 7 № 7337

Дан фрагмент электронной таблицы.

 

ABC
132
2=A1–C1=6*C1–A1=5*(B1+2*C1)/A1

 

Какое целое число должно быть записано в ячейке A1, чтобы диаграмма, построенная после выполнения вычислений по значениям диапазона ячеек A2:С2, соответствовала рисунку? Значения во всех ячейках диапазона A1:C2 одного знака.


Ответ:

8
Задание 8 № 11264

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

 

БейсикPython

DIM S, N AS INTEGER

S = 0

N = 0

WHILE S < 165

  S = S + 15

  N = N + 2

WEND

PRINT N

s = 0

n = 0

while s < 165:

    s = s + 15

    n = n + 2

print(n)

Алгоритмический языкПаскаль

нач

  цел n, s

  n := 0

  s := 0

  нц пока s < 165

    s := s + 15

    n := n + 2

  кц

  вывод n

кон

var s, n: integer;

begin

  s := 0;

  n := 0;

  while s < 165 do

  begin

    s := s + 15;

    n := n + 2

  end;

  writeln(n)

end.

Си++

#include <iostream>

using namespace std;

int main()

{

  int s = 0, n = 0;

  while (s < 165) {

    s = s + 15;

    n = n + 2;

  }

  cout << n << endl;

  return 0;

}

 


Ответ:

9
Задание 9 № 5430

Документ объёмом 40 Мбайт можно передать с одного компьютера на другой двумя способами.

 

А. Сжать архиватором, передать архив по каналу связи, распаковать.

 

Б. Передать по каналу связи без использования архиватора.

 

Какой способ быстрее и насколько, если:

 

 · средняя скорость передачи данных по каналу связи составляет 222 бит в секунду;

 · объём сжатого архиватором документа равен 90% исходного;

 · время, требуемое на сжатие документа, — 16 секунд, на распаковку — 2 секунды?

 

В ответе напишите букву А, если быстрее способ А, или Б, если быстрее способ Б. Сразу после буквы напишите число, обозначающее, на сколько секунд один способ быстрее другого. Так, например, если способ Б быстрее способа А на 23 секунды, в ответе нужно написать Б23. Единицы измерения «секунд», «сек.», «с.» к ответу добавлять не нужно.


Ответ:

10
Задание 10 № 13513

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


Ответ:

11
Задание 11 № 13487

Ниже на пяти языках программирования записаны две рекурсивные функции: F и G.

 

БейсикPython

 FUNCTION F(n)

  IF n > 1 THEN

    F = F(n - 1) +G(n - 1)

  ELSE

     F = n

  END IF

 END FUNCTION

 

 FUNCTION G(n)

  IF n > 1 THEN

    G = G(n - 1) +F(n)

  ELSE

     G = n

  END IF

 END FUNCTION

def F(n):

    if n > 1:

      return F(n-1) + G(n-1)

    else: return n

def G(n):

    if n > 1:

      return G(n-1) + F(n)

    else: return n

ПаскальАлгоритмический язык

function F (n : integer) : integer;

 begin

  if n > 1 then

   F := F(n - 1) + G(n - 1)

  else

   F := n;

 end;

function G (n : integer) : integer;

 begin

  if n > 1 then

   G := G(n - 1) + F(n)

  else

   G := n;

 end;

алг цел F(цел n)

 нач

  если n > 1

  то

    знач:= F(n-1) + G(n-1)

  иначе

    знач:=n

  все

 кон

алг цел G(цел n)

 нач

  если n > 1

  то

    знач:= G(n-1) + F(n)

  иначе

    знач:=n

  все

 кон

Си

int F(int n) {

    if (n > 1)

     return F(n-1) + G(n-1);

    else

     return n;

}

int G(int n) {

    if (n > 1)

     return G(n-1) + F(n);

    else

     return n;

}

 

 

Чему будет равно значение, вычисленное при выполнении вызова F(5)?


Ответ:

12
Задание 12 № 9363

В тер­ми­но­ло­гии сетей TCP/IP мас­кой сети на­зы­ва­ет­ся дво­ич­ное число, опре­де­ля­ю­щее, какая часть IP-ад­ре­са узла сети от­но­сит­ся к ад­ре­су сети, а какая – к ад­ре­су са­мо­го узла в этой сети. Обыч­но маска за­пи­сы­ва­ет­ся по тем же пра­ви­лам, что и IP-адрес, – в виде четырёх бай­тов, причём каж­дый байт за­пи­сы­ва­ет­ся в виде де­ся­тич­но­го числа. При этом в маске сна­ча­ла (в стар­ших раз­ря­дах) стоят еди­ни­цы, а затем с не­ко­то­ро­го раз­ря­да – нули. Адрес сети по­лу­ча­ет­ся в ре­зуль­та­те при­ме­не­ния по­раз­ряд­ной конъ­юнк­ции к за­дан­но­му IP-ад­ре­су узла и маске.

На­при­мер, если IP-адрес узла равен 231.32.255.131, а маска равна 255.255.240.0, то адрес сети равен 231.32.240.0.

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


Ответ:

13
Задание 13 № 13740

При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий из 10 символов. В качестве символов используют прописные буквы латинского алфавита, т. е. 26 различных символов. В базе данных для хранения каждого пароля отведено одинаковое и минимально возможное целое число байт. При этом используют посимвольное кодирование паролей, все символы кодируют одинаковым и минимально возможным количеством бит. Определите объём памяти (в байтах), необходимый для хранения данных о 50 пользователях. В ответе запишите только целое число — количество байт.


Ответ:

14
Задание 14 № 1821

Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:

вверх вниз влево вправо

При выполнении этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →.

Четыре команды проверяют истинность условия отсутствия стены у той клетки, где находится РОБОТ:

сверху
свободно
снизу
свободно
слева
свободно
справа
свободно

Цикл

ПОКА <условие> команда

выполняется, пока условие истинно, иначе происходит переход на следующую строку.

Сколько клеток приведенного лабиринта соответствует требованию, что, выполнив предложенную ниже программу, РОБОТ остановится в той же клетке, с которой он начал движение?

 

НАЧАЛО

ПОКА <справа свободно> вправо

ПОКА <снизу свободно> вниз

ПОКА <слева свободно> влево

ПОКА <сверху свободно> вверх

КОНЕЦ


Ответ:

15
Задание 15 № 9801

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

Сколько существует различных путей из города А в город Т?


Ответ:

16
Задание 16 № 6780

Решите уравнение: 1007 + x = 2105.

Ответ запишите в шестеричной системе (основание системы счисления в ответе писать не нужно).


Ответ:

17
Задание 17 № 10418

В языке запросов поискового сервера для обозначения логической операции «ИЛИ» используется символ «|», а для логической операции «И» — символ «&».

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

 

ЗапросНайдено страниц (в тысячах)
Канада & США277
США & (Канада | Мексика)417
Канада & США & Мексика106

 

Какое количество страниц (в тысячах) будет найдено по запросу США & Мексика?

Считается, что все запросы выполнялись практически одновременно, так что набор страниц, содержащих все искомые слова, не изменялся за время выполнения запросов.


Ответ:

18
Задание 18 № 7763

На числовой прямой даны два отрезка: P = [5, 30] и Q = [14, 23]. Укажите наибольшую возможную длину промежутка A, для которого формула

 

((x ∈ P) ≡ (x ∈ Q)) → ¬(x ∈ A)

 

тождественно истинна, то есть принимает значение 1 при любом значении переменной х.


Ответ:

19
Задание 19 № 6886

В программе описан одномерный целочисленный массив с индексами от 0 до 10. Ниже представлен записанный на разных языках программирования фрагмент одной и той же программы, обрабатывающей данный массив.

 

БейсикПаскаль

s = 0

n = 10

FOR i = 0 TO n-1

    s = s+A(i)-A(i+1)

NEXT i

s:=0;

n:=10;

for i:=0 to n-1 do begin

    s:=s+A[i]-A[i+1];

end;

Си++Алгоритмический язык

s = 0;

n=10;

for (i = 0; i <= n-1; i++) {

    s=s+A[i]-A[i+1];

}

s:=0

n:=10

нц для i от 0 до n-1

    s:=s+A[i]-A[i+1]

кц

Python

s = 0

n = 10

for i in range(0, n):

    s=s+A[i]-A[i+1]

 

 

В начале выполнения этого фрагмента в массиве находились числа 15, 10, 5, 0, 5, 10, 15, 10, 5, 0, 5, т. е. A[0]=15, A[1]=10 и т. д. Чему будет равно значение переменной s после выполнения данной программы?


Ответ:

20
Задание 20 № 3278

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

 

 

БейсикPython

DIM X, L, M AS INTEGER

INPUT X

L = 0

M = 0

WHILE X > 0

L = L + 1

IF M < x AND x mod 2 = 0 THEN

     M = x mod 10

ENDIF

x = x \ 10

PRINT L

PRINT M

x = int(input())

L = 0

M = 0

while x > 0:

    L = L + 1

    if M < x and x % 2 == 0:

        M = x % 10

    x = x // 10

print(L)

print(M)

ПаскальАлгоритмический язык

var x, L, M: integer;

begin

    readln(x);

    L := 0;

    M := 0;

    while x > 0 do

    begin

        L := L + 1;

        if (M < x) and (x mod 2 = 0) then

            M:=x mod 10;

        x := x div 10;

    end;

    writeln(L);

    writeln(M);

end.

алг

нач

    цел x, L, M

    ввод x

    L := 0

    M := 0

    нц пока x > 0

        L := L + 1

        если M < x и mod(x,2) = 0 то

            M := mod(x,10)

        все

        x := div(x,10)

    кц

    вывод L, нс, M

кон

Си++

 

#include <iostream>

using namespace std;

int main()

{

    int x, L, M;

    cin >> x;

    L = 0;

    M = 0;

    while (x > 0){

        L = L + 1;

        if(M < x and x % 2 == 0){

            M = x % 10;

        }

        x = x / 10;

    }

    cout << L << endl << M endl;

}

 


Ответ:

21
Задание 21 № 3346

Определите, какое число будет напечатано в результате выполнения следующего алгоритма:

 

БейсикПаскаль

DIM A, B, T, M, R AS INTEGER

A =-5: B = 5

M = A: R = F(А)

FOR T = A TO B

    IF F(T) < R THEN

        M = T

        R = F(T)

    END IF

NEXT T

PRINT R

FUNCTION F(x)

    F = (x+5)*(1-x)

END FUNCTION

var a,b,t,M,R: integer;

    Function F(x:integer): integer;

        begin

            F := (x+5)*(1-x)

        end;

begin

    a :=-5; b := 5;

    M := a; R := F(a);

    for t := a to b do begin

        if (F(t) < R) then begin

            M := t;

            R := F(t)

        end

    end;

    write(R)

end.

Си++Алгоритмический

#include <iostream>

using namespace std;

int F(int x)

{

return (x+5)*(1-x);

}

int main()

{

    int a, b, t, M, R;

    a =-5; b = 5;

    M = a; R = F(a);

    for (t = a; t <= b; t++) {

        if (F(t) < R) {

            M = t; R = F(t);

        }

    }

    cout « R « endl;

}

алг

нач

цел a, b, t, M, R

a :=-5; b := 5

M := a; R := F(a)

нц для t от a до b

если F(t) < R

то

M := t; R := F(t)

все

кц

вывод R

кон

алг цел F(цел x)

нач

знач := (x+5)*(1-x)

кон

Python

def f(x):

    return (x+5)*(1-x)

a =-5

b = 5

M = a

R = f(a)

for t in range(a, b+1):

    if (f(t) < R):

        M = t

        R = f(t)

print(R)

 


Ответ:

22
Задание 22 № 15959

Ис­пол­ни­тель Раз­Два­Т­ри пре­об­ра­зу­ет число на экра­не.

У ис­пол­ни­те­ля есть три ко­ман­ды, ко­то­рым при­сво­е­ны но­ме­ра:

1. При­ба­вить 1

2. Умно­жить на 2

3. Умно­жить на 3

Пер­вая ко­ман­да уве­ли­чи­ва­ет число на экра­не на 1, вто­рая умно­жа­ет его на 2, тре­тье умно­жа­ет его на 3.

Про­грам­ма для ис­пол­ни­те­ля Раз­Два­Т­ри — это по­сле­до­ва­тель­ность ко­манд.

Сколь­ко су­ще­ству­ет про­грамм, ко­то­рые пре­об­ра­зу­ют ис­ход­ное число 3 в число 50 и при этом тра­ек­то­рия вы­чис­ле­ний со­дер­жит число 15 и не со­дер­жит числа 33?

Тра­ек­то­рия вы­чис­ле­ний — это по­сле­до­ва­тель­ность ре­зуль­та­тов вы­пол­не­ния всех ко­манд про­грам­мы. На­при­мер, для про­грам­мы 312 при ис­ход­ном числе 6 тра­ек­то­рия будет со­сто­ять из чисел 18, 19, 38.


Ответ:

23
Задание 23 № 5531

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

 

((x1 ≡ x2) ∨ (x3 ≡ x4)) ∧ (¬(x1 ≡ x2) ∨ ¬(x3 ≡ x4)) = 1

((x3 ≡ x4) ∨ (x5 ≡ x6)) ∧ (¬(x3 ≡ x4) ∨ ¬(x5 ≡ x6)) = 1

...

((x9 ≡ x10) ∨ (x11 ≡ x12)) ∧ (¬(x9 ≡ x10) ∨ ¬(x11 ≡ x12)) = 1

 

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


Ответ:

24
Задание 24 № 11329

Дано целое по­ло­жи­тель­ное число N, не пре­вос­хо­дя­щее 1000. Не­об­хо­ди­мо опре­де­лить, яв­ля­ет­ся ли это число сте­пе­нью числа 4. То есть тре­бу­ет­ся опре­де­лить, су­ще­ству­ет ли такое целое число К, что 4K = N, и вы­ве­сти это число либо со­об­ще­ние, что та­ко­го числа не су­ще­ству­ет. Для ре­ше­ния этой за­да­чи уче­ник на­пи­сал про­грам­му, но, к со­жа­ле­нию, его про­грам­ма ока­за­лась не­вер­ной.

 

 

Бей­сикPython

DIM N, K AS INTEGER

INPUT N

K = 0

WHILE N MOD 4 = 0

    K = K + (n \ 4)

    N = n div 4

WEND

IF N <= 4 THEN

    PRINT K

ELSE

    PRINT "Не су­ще­ству­ет"

END IF

END

n = int(input())

k = 0

while n%4 == 0:

    k = k + (n // 4)

    n = n // 4

if n <= 4:

    print(k)

else:

    print("Не су­ще­ству­ет")

Пас­кальАл­го­рит­ми­че­ский язык

var n, k: integer;

begin

    read(n);

    k := 0;

    while n mod 4 = 0 do begin

        k := k + n div 4;

        n := n div 4;

    end;

    if n <= 4 then

        writeln(k)

    else

        writeln('Не су­ще­ству­ет')

end.

алг

нач

    цел n, k

    ввод n

    k := 0

    нц пока mod(n, 4)=0

        k := k + div(n, 4)

        n := div(n,4)

    кц

    если n <= 4

        то вывод k

        иначе вывод "Не су­ще­ству­ет"

    все

кон

Си++

#include <iostream>

using namespace std;

int main(){

    int n, k;

    cin >> n;

    k = 0;

    while (n%4 == 0) {

        k = k + n / 4;

        n = n / 4;

    }

    if (n <= 4)

        cout « k « endl;

    else

        cout << "Не су­ще­ству­ет";

    return 0;

}

 

 

 

По­сле­до­ва­тель­но вы­пол­ни­те сле­ду­ю­щее.

1. На­пи­ши­те, что вы­ве­дет эта про­грам­ма при вводе числа 16.

2. При­ве­ди­те при­мер числа, при вводе ко­то­ро­го при­ведённая про­грам­ма на­пе­ча­та­ет то, что тре­бу­ет­ся.

3. Най­ди­те в про­грам­ме все ошиб­ки (их может быть одна или не­сколь­ко). Для каж­дой ошиб­ки вы­пи­ши­те стро­ку, в ко­то­рой она до­пу­ще­на, и при­ве­ди­те эту же стро­ку в ис­прав­лен­ном виде.


Решения заданий с развернутым ответом не проверяются автоматически.
На следующей странице вам будет предложено проверить их самостоятельно.

25
Задание 25 № 6822

Дан массив, содержащий 2014 положительных целых чисел. Напишите на одном из языков программирования программу, которая находит в этом массиве количество элементов, значение которых более чем в два раза превосходит значение следующего элемента. Например, для массива из 6 элементов, содержащего числа 100, 32, 15, 10, 4, 2, программа должна выдать ответ 3 (условию соответствуют элементы со значениями 100, 32 и 10). Программа должна вывести общее количество подходящих элементов, значения элементов выводить не нужно. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из описанных переменных.

 

БейсикПаскаль

N=2014

DIM A(N) AS INTEGER

DIM I, J, K AS INTEGER

FOR I = 1 TO N

INPUT A(I)

NEXT I

END

const

N=2014;

var

a: array [1..N] of integer;

i, j, k: integer;

begin

for i:=1 to N do

readln(a[i]);

end.

Си++Алгоритмический язык

#include <iostream>

using namespace std;

#define N 2014

int main(){

int a[N];

int i, j, k;

for (i=0; i < N; i++)

cin >> a[i];

}

алг

нач

цел N=2014

целтаб a[1:N]

цел i, j, k

нц для i от 1 до N

ввод a[i]

кц

кон

Python

# допускается также

# использовать две

# целочисленные переменные j, k

a = []

n = 2014

for i in range(0, n):

a.append(int(input()))

...

 

В качестве ответа Вам необходимо привести фрагмент программы, который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например Free Pascal 2.4). В этом случае вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии.


Решения заданий с развернутым ответом не проверяются автоматически.
На следующей странице вам будет предложено проверить их самостоятельно.

26
Задание 26 № 5290

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

Игра за­вер­ша­ет­ся в тот мо­мент, когда ко­ли­че­ство кам­ней в куче ста­но­вит­ся 100 или более. По­бе­ди­те­лем счи­та­ет­ся игрок, сде­лав­ший по­след­ний ход, то есть пер­вым по­лу­чив­ший кучу, в ко­то­рой будет 100 или боль­ше кам­ней.

В на­чаль­ный мо­мент в куче было S кам­ней, 1 ≤ S ≤ 99.

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

Вы­пол­ни­те сле­ду­ю­щие за­да­ния. Во всех слу­ча­ях обос­но­вы­вай­те свой ответ.

1. а) При каких зна­че­ни­ях числа S Петя может вы­иг­рать пер­вым ходом? Ука­жи­те все такие зна­че­ния и вы­иг­ры­ва­ю­щий ход Пети.

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

2. Ука­жи­те два зна­че­ния S, при ко­то­рых у Пети есть вы­иг­рыш­ная стра­те­гия, при­чем (а) Петя не может вы­иг­рать пер­вым ходом, но (б) Петя может вы­иг­рать своим вто­рым ходом, не­за­ви­си­мо от того, как будет хо­дить Ваня.

Для ука­зан­ных зна­че­ний S опи­ши­те вы­иг­рыш­ную стра­те­гию Пети.

3. Ука­жи­те такое зна­че­ние S, при ко­то­ром

- у Вани есть вы­иг­рыш­ная стра­те­гия, поз­во­ля­ю­щая ему вы­иг­рать пер­вым или вто­рым ходом при любой игре Пети, и при этом

- у Вани нет стра­те­гии, ко­то­рая поз­во­лит ему га­ран­ти­ро­ван­но вы­иг­рать пер­вым ходом.

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


Решения заданий с развернутым ответом не проверяются автоматически.
На следующей странице вам будет предложено проверить их самостоятельно.

27
Задание 27 № 5503

По каналу связи передаётся последовательность положительных целых чисел, все числа не превышают 1000. Количество чисел известно, но может быть очень велико. Затем передаётся контрольное значение последовательности — наибольшее число R, удовлетворяющее следующим условиям:

 

1) R — произведение двух различных переданных элементов последовательности («различные» означает, что не рассматриваются квадраты переданных чисел, произведения различных элементов последовательности, равных по величине, допускаются);

 

2) R делится на 14.

 

Если такого числа R нет, то контрольное значение полагается равным 0. В результате помех при передаче как сами числа, так и контрольное значение могут быть искажены.

 

Напишите программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет проверять правильность контрольного значения. Программа должна напечатать отчёт по следующей форме:

 

Вычисленное контрольное значение: ...

 

Контроль пройден (или — Контроль не пройден)

 

Перед текстом программы кратко опишите используемый Вами алгоритм решения.

 

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

 

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

Итоговая оценка выставляется как максимальная из оценок за задания А и Б. Если решение одного из заданий не представлено, то считается, что оценка за это задание составляет 0 баллов.

Задание Б является усложненным вариантом задания А, оно содержит дополнительные требования к программе. Перед программой укажите версию языка программирования.

 

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

Обязательно укажите, что программа является решением задания А.

Максимальная оценка за выполнение задания А – 2 балла.

Б. Напишите программу для решения поставленной задачи, которая будет эффективна как по времени, так и по памяти (или хотя бы по одной из этих характеристик).

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

 

 

Пример входных данных:

 

б

 

77

14

7

9

 

499

100

7700

 

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

 

Вычисленное контрольное значение: 7700

Контроль пройден


Решения заданий с развернутым ответом не проверяются автоматически.
На следующей странице вам будет предложено проверить их самостоятельно.
Времени прошло:0:00:00
Времени осталось:3.9166666666666665:55:00
Завершить тестирование, свериться с ответами, увидеть решения.