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


Вариант № 7233407

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


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


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

Вычислите: 101011012 − 2558 + D16. Ответ запишите в десятичной системе счисления. В ответе запишите только число, основание системы счисления писать не нужно.


Ответ:

2
Задание 2 № 13348

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

 

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

 

В ответе напишите буквы w, x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала — буква, соответствующая первому столбцу; затем — буква, соответствующая второму столбцу, и т. д.) Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.

 

Пример. Если бы функция была задана выражением ¬xy, зависящим от двух переменных: x и y, и был приведён фрагмент её таблицы истинности, содержащий все наборы аргументов, при которых функция F истинна.

 

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

 

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


Ответ:

3
Задание 3 № 5377

Между населёнными пунктами А, В, С, D, Е, F построены дороги, протяжённость которых приведена в таблице (отсутствие числа в таблице означает, что прямой дороги между пунктами нет):

 

ABCDEF
A32620
B35
C22
D652812
E82
F20122

 

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


Ответ:

4
Задание 4 № 7250

База данных «Библиотека» состоит из трех связанных таблиц:

 

Таблица читателей
№ п/пФамилия, Имя, ОтчествоАдрес№ читательского билета
1Петров Геннадий СергеевичЛетная ул., д. 15 кв. 10А112703
2Смирнова Елена ПетровнаПолевая ул., д. 28, кв. 5В514891
3Кошкина Ольга ПетровнаФруктовая ул., д. 11, кв. 350Б312187
4Сергеенко Олег ТимофеевичЛетная ул., д. 8/15 кв. 81А220157
5Плотникова Тамара ТихоновнаВиноградная ул., д. 47, кв. 58В612831
6Кудряшова Ирина ИвановнаПолевая ул., д. 11, кор. 2, кв. 118А340280

 

Таблица книг
Инв. номерАвторНазваниеГод издания
56714Пушкин А. С.Маленькие трагедии1983
35214Пушкин А. С.Борис Годунов1990
87561Лермонтов М. Ю.Маскарад1980
54032Гоголь Н. В.Вий2008
20004Гоголь Н. В.Мёртвые души2003
75020Пушкин А. С.Сказки1998

 

Таблица выдачи книг
Инв. номер книги№ читательского билетаДата выдачи
56714А11270315.01.2010
20004Б31218720.01.2010
35214А11270305.02.2010
56714А22015710.03.2010
87561А22015729.03.2010
54032В51489108.02.2010
56714Б31218715.04.2010
75020А34028007.02.2010
20004А11270301.03.2010

 

Сколько раз жители ул. Лётная брали в библиотеке книги А. С. Пушкина?


Ответ:

5
Задание 5 № 9356

По каналу связи передаются сообщения, содержащие только четыре буквы: П, О, С, Т; для передачи используется двоичный код, допускающий однозначное декодирование. Для букв Т, О, П используются такие кодовые слова: Т: 111, О: 0, П: 100.

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


Ответ:

6
Задание 6 № 14221

Автомат получает на вход трёхзначное число. По этому числу строится новое число по следующим правилам.

1. Складываются отдельно первая и вторая цифры, а также вторая и третья цифры.

2. Полученные два числа записываются друг за другом в порядке неубывания без разделителей.

Пример. Исходное число: 872. Суммы: 8+7 = 15; 7+2 = 9. Результат: 915.

Укажите наименьшее число, при обработке которого автомат выдаёт результат 714.


Ответ:

7
Задание 7 № 7447

Коле нужно с помощью электронных таблиц построить таблицу квадратов двузначных чисел от 20 до 59.

Для этого сначала в диапазоне В1:К1 он записал числа от 0 до 9, и в диапазоне А2:А5 он записал числа от 2 до 5. Затем в ячейку В5 записал формулу квадрата двузначного числа (А5 — число десятков; В1 — число единиц), после чего скопировал её во все ячейки диапазона B2:К5. В итоге получил таблицу квадратов двузначных чисел. На рисунке ниже представлен фрагмент этой таблицы.

 

ABCDE
10123
22400441484529
3390096110241089
441600168117641849
552500260127042809

 

В ячейке B5 была записана одна из следующих формул:

 

1) =(B1+10*A5)^2

2) =($B1+10*$A5)^2

3) =(B$1+10*$A5)^2

4) =($B1+10*A$5)^2

 

Укажите в ответе номер формулы, которая была записана в ячейке B5 Примечание. Знак $ используется для обозначения абсолютной адресации.


Ответ:

8
Задание 8 № 9794

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

 

БейсикPython

DIM S, N AS INTEGER

S = 0

N = 0

WHILE 2*S < 111

  S = S + 8

  N = N + 2

WEND

PRINT N

s = 0

n = 0

while 2*s < 111:

  s = s + 8

  n = n + 2

print(n)

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

var s, n: integer;

begin

  s := 0;

  n := 0;

  while 2*s < 111 do

  begin

    s := s + 8;

    n := n + 2

  end;

  writeln(n)

end.

алг

нач

  цел n, s

  n := 0

  s := 0

  нц пока 2*s < 111

    s := s + 8

    n := n + 2

  кц

  вывод n

кон

Си++

#include <iostream>

using namespace std;

int main()

{ int s = 0, n = 0;

while (2*s < 111) { s = s + 8; n = n + 2; }

cout << n << endl;

return 0;

}

 


Ответ:

9
Задание 9 № 2436

Сколько секунд потребуется модему, передающему сообщения со скоростью 28 800 бит/с, чтобы передать 100 страниц текста в 30 строк по 60 символов каждая, при условии, что каждый символ кодируется 1 байтом?


Ответ:

10
Задание 10 № 13737

Все 4-буквенные слова, составленные из букв Д, Е, К, О, Р, записаны в алфавитном порядке и пронумерованы, начиная с 1. Ниже приведено начало списка.

1. ДДДД

2. ДДДЕ

3. ДДДК

4. ДДДО

5. ДДДР

6. ДДЕД

      …

Под каким номером в списке идёт первое слово, которое начинается с буквы K?


Ответ:

11
Задание 11 № 13622

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

 

 

БейсикPython

FUNCTION F(n)

    IF n > 2 THEN

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

    ELSE

        F = n

    END IF

END FUNCTION

 

FUNCTION G(n)

    IF n > 2 THEN

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

    ELSE

        G = n+1

    END IF

END FUNCTION

def F(n):

    if n > 2:

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

    else: return n

 

def G(n):

    if n > 2:

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

    else: return n+1

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

function F(n: integer): integer;

begin

    if n > 2 then

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

    else

        F := n;

end;

 

function G(n: integer): integer;

begin

    if n > 2 then

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

    else

        G := n+1;

end;

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

нач

    если n > 2

        то

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

        иначе

            знач := n

    все

кон

 

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

нач

    если n > 2

        то

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

        иначе

            знач := n+1

    все

кон

Си

int F(int n)

{

if (n > 2)

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

else return n;

}

int G(int n)

{

if (n > 2)

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

else return n+1;

}

 

 

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


Ответ:

12
Задание 12 № 13358

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

Например, если IP-адрес узла равен 231.32.255.131, а маска равна 255.255.240.0, то адрес сети равен 231.32.240.0. Для узла с IP-адресом 147.192.92.64 адрес сети равен 147.192.80.0. Чему равно значение третьего слева байта маски? Ответ запишите в виде десятичного числа.


Ответ:

13
Задание 13 № 217

В скачках участвуют 20 лошадей. Специальное устройство регистрирует прохождение каждой лошадью финиша, записывая ее номер с использованием минимально возможного количества бит, одинакового для каждой лошади. Каков информационный объем сообщения, записанного устройством, если до финиша добрались только 15 из 20 участвовавших в скачках лошадей? (Ответ дайте в битах.)


Ответ:

14
Задание 14 № 11243

Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.

 

А) заменить (v, w).

Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Например, выполнение команды

заменить (111, 27)

преобразует строку 05111150 в строку 0527150.

Если в строке нет вхождений цепочки v, то выполнение команды заменить (v, w) не меняет эту строку.

Б) нашлось (v).

Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.

  Цикл

  ПОКА условие

      последовательность команд

  КОНЕЦ ПОКА

  выполняется, пока условие истинно.

  В конструкции

  ЕСЛИ условие

      ТО команда1

      ИНАЧЕ команда2

  КОНЕЦ ЕСЛИ

  выполняется команда1 (если условие истинно) или команда2 (если условие ложно).

 

Ниже приведена программа для исполнителя Редактор.

 

НАЧАЛО

  ПОКА нашлось (19) ИЛИ нашлось (299) ИЛИ нашлось (3999)

    заменить (19, 2)

    заменить (299, 3)

    заменить (3999, 1)

  КОНЕЦ ПОКА

КОНЕЦ

 

На вход этой программе подаётся строка длины 99, состоящая из цифры 1, за которой следуют 98 идущих подряд цифр 9. Какая строка получится в результате применения программы к этой строке? В ответе запишите полученную строку.


Ответ:

15
Задание 15 № 18821

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

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

 


Ответ:

16
Задание 16 № 14275

В системе счисления с основанием N запись числа 9310 оканчивается на 2 и содержит не менее трёх цифр. Чему равно число N?


Ответ:

17
Задание 17 № 16446

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

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

 

ЗапросНайдено страниц
(в тысячах)
суффикс117
суффикс | корень345
суффикс & корень72
уравнение284
уравнение & суффикс0
уравнение & корень190

 

Какое количество страниц (в тысячах) будет найдено по запросу уравнение | корень?

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


Ответ:

18
Задание 18 № 18087

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

 

(y + 2x < A) ∨ (x > 15) ∨ (y > 30)

 

тождественно истинно при всех вещественных значениях x и y?


Ответ:

19
Задание 19 № 16046

В программе используется одномерный целочисленный массив A с индексами от 0 до 9. Значения элементов равны 2, 4, 3, 6, 3, 7, 8, 2, 9, 1 соответственно, т.е. A[0] = 2, A[1] = 4 и т.д.

Определите значение переменной c после выполнения следующего фрагмента этой программы, записанного ниже на пяти языках программирования.

 

БейсикPython

c = 0

FOR i = 1 TO 9

    IF A(i-1) < A(i) THEN

       c = c + 1

       t = A(i)

       A(i) = A(i-1)

       A(i-1) = t

    END IF

NEXT i

c = 0

for i in range(1,10):

    if A[i-1] < A[i]:

       c = c + 1

       t = A[i]

       A[i] = A[i-1]

       A[i-1] = t

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

c := 0;

for i := 1 to 9 do

    if A[i-1] < A[i] then

    begin

        c := c + 1;

        t := A[i];

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

         A[i-1] := t;

    end;

c := 0

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

     если A[i-1] < A[i] то

       c := c + 1

       t := A[i]

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

       A[i-1] := t

     все

кц

Си++

c = 0;

for (int i = 1; i < 10; i++) {

     if (A[i-1] < A[i]){

        c++;

        t = A[i];

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

        A[i-1] = t;

    }

}

 


Ответ:

20
Задание 20 № 5364

Ниже на четырёх языках записан алгоритм. Получив на вход число , этот алгоритм печатает два числа: и . Укажите наибольшее из таких чисел , при вводе которых алгоритм печатает сначала 3, а потом 2. Допускается диапазон значений для величин целого типа: от −231 до 231 — 1.

 

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

DIM X, A, B, C AS INTEGER

INPUT X

A = 0: B = 0

WHILE X > 0

    C = X MOD 2

    IF C = 0 THEN

        A = A + 1

    ELSE

        B = B + 1

    END IF

    X = X / 10

WEND

PRINT A

PRINT B

var a, b, c: integer;

x: LongInt;

begin

    readln(x);

    a := 0; b := 0;

    while x > 0 do

    begin

        c := x mod 2;

        if c = 0 then

            a := a + 1

        else

            b := b + 1;

        x := x div 10;

    end;

    writeln(a); write(b);

end.

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

#include <iostream>

using namespace std;

 

int main()

{

    int x, a, b, c;

    cin >> x;

    a = 0; b = 0;

    while (x > 0) {

        c = x%2;

        if (c == 0) a = a + 1;

        else b = b + 1;

        x = x / 10;

    }

    cout << a << endl << b << endl;

}

 

 

алг

нач

цел x, a, b, c

ввод x

a := 0; b := 0

нц пока x > 0

    c := mod(x, 2)

    если c = 0

    то a := a + 1

    иначе b := b + 1

все

x := div(x, 10)

кц

вывод а, нс b

кон

Python

x = int(input())

a = 0

b = 0

while x > 0:

    c = x % 2

    if c == 0:

        a += 1

    else:

        b += 1

    x = x // 10

print(a)

print(b)

 


Ответ:

21
Задание 21 № 15958

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

 

 

БейсикPython

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

A = −7: B = 9

M = A : R = F(A)

FOR T = A TO B

    IF F(T) < R THEN

        M = T

        R = F(T)

    END IF

NEXT T

PRINT M+R

 

FUNCTION F(x)

    F = 2*(x*x−64)*(x*x−64)+17

END FUNCTION

def F(x):

    return 2*(x*x−64)*(x*x−64)+17

 

a = −7; b = 9

M = a; R = F(a)

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

    if F(t) < R:

        M = t; R = F(t)

print(M+R)

 

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

var

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

 

function F(x: integer): integer;

begin

    f := 2*(x*x−64)*(x*x−64)+17;

end;

 

begin

    a := −7; b := 9;

    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(M+R);

end.

 

алг

нач

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

    a := −7; b := 9

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

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

        если F(t) < R

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

        все

    кц

    вывод M + R

кон

 

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

нач

    знач := 2 * (x*x−64) * (x*x−64) + 17

кон

 

С++

#include <iostream>

using namespace std;

long f(int x) {

    return 2 * (x*x−64) * (x*x−64) + 17;

}

 

int main()

{

    int a, b, t, M, R;

    a = −7; b = 9;

    M = a; R = F(a);

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

        if (F(t) < R) {

            M = t; R = F(t);

        }

    }

    cout << M + R;

    return 0;

}

 


Ответ:

22
Задание 22 № 15807

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

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

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

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

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

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

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

Траектория вычислений — это последовательность результатов выполнения всех команд программы. Например, для программы 212 при исходном числе 7 траектория будет состоять из чисел 14, 15, 30.


Ответ:

23
Задание 23 № 6967

Сколько существует различных наборов значений логических переменных x1, x2, x3, x4, x5, y1, y2, y3, y4, y5, которые удовлетворяют всем перечисленным ниже условиям?

 

(x1→x2) ∧ (x2→x3) ∧ (x3→x4) ∧ (x4→x5) = 1

(x1→y1) ∧ (x2→y2) ∧ (x3→y3) ∧ (x4→y4) ∧ (x5→y5) = 1

 

В ответе не нужно перечислять все различные наборы значений переменных x1, x2, x3, x4, x5, y1, y2, y3, y4, y5, при которых выполнена данная система равенств. В качестве ответа Вам нужно указать количество таких наборов.


Ответ:

24
Задание 24 № 15836

В натуральном числе N (0 < N < 109) необходимо подсчитать количество цифр десятичной записи, чётность которых совпадает с чётностью последней цифры числа N. Например, для N = 123 должен получиться ответ 2 (последняя цифра числа нечётная, а всего в записи числа две нечётные цифры: 1 и 3).

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

Ниже эта программа для Вашего удобства приведена на пяти языках программирования.

 

 

БейсикPython

DIM N, K, D AS INTEGER

INPUT N

K = 0

D = N MOD 10

WHILE N > 0

    IF N MOD 2 = D THEN

        K = K + D

    END IF

    N = N \ 10

WEND

PRINT K

END

N = int(input())

k = 0

d = N % 10

while N > 0:

    if N % 2 == d:

        k += d

    N = N // 10

print(k)

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

var N, k, d: integer;

begin

    read(N);

    k := 0;

    d := N mod 10;

    while N > 0 do begin

        if N mod 2 = d

            then k := k + d;

        N := N div 10

    end;

    writeln(k)

end.

алг

нач

    цел N, k, d

    ввод N

     k := 0

     d := mod(N,10)

     нц пока N > 0

        если mod(N,10) = d

            то k := k + d

        все

        N := div(N,10)

     кц

     вывод k

кон

С++

#include <iostream>

using namespace std;

int main(){

    int N, k, d;

    cin >> N;

    k = 0;

    d = N % 10;

    while (N > 0) {

        if (N % 2 == d)

        k = k + d;

    N = N / 10;

    }

    cout << k;

    return 0;

}

 

 

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

1. Напишите, что выведет эта программа при вводе N = 1980.

2. Назовите минимальное трёхзначное N, при котором программа выведет верный ответ.

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

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

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


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

25
Задание 25 № 2913

Опишите на русском языке или на одном из языков программирования алгоритм подсчета максимального количества подряд идущих отрицательных элементов в заданном целочисленном массиве длиной 30.


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

26
Задание 26 № 16401

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

 

добавить в одну из куч один камень или

увеличить количество камней в куче в два раза.

 

Например, пусть в одной куче 6 камней, а в другой 9 камней; такую позицию мы будем обозначать (6, 9). За один ход из позиции (6, 9) можно получить любую из четырёх позиций: (7, 9), (12, 9), (6, 10), (6, 18). Чтобы делать ходы, у каждого игрока есть неограниченное количество камней.

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

В начальный момент в первой куче было 8 камней, во второй куче — S камней, 1 ≤ S ≤ 41.

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

Выполните следующие задания.

Задание 1.

а) Назовите все значения S, при которых Петя может выиграть первым ходом, причём у Пети есть ровно один выигрывающий ход.

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

Задание 2.

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

Задание 3.

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

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


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

27
Задание 27 № 6279

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

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

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

 

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

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

 

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

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

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

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

Обязательно укажите, что программа является решением задания Б. Максимальная оценка за правильную программу, эффективную по времени и по памяти, — 4 балла.

Максимальная оценка за правильную программу, эффективную по времени, но неэффективную по памяти, — 3 балла.

Напоминаем! Не забудьте указать, к какому заданию относится каждая из представленных Вами программ.

 

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

 

3

123

0

2

 

Программа должна вывести в порядке возрастания номера сигналов, которые принадлежат основному подмножеству данного участка. Нумерация элементов последовательности ведётся с единицы. Пример выходных данных для приведённого выше примера входных данных: 1 3.


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