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


Вариант № 4871420

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


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


Версия для печати и копирования в MS Word
1
Задание 1 № 101

Дано А = A716, B = 2518. Найдите сумму A + B. Ответ укажите в двоичной системе.


Ответ:

2
Задание 2 № 14217

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

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

 

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

 

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

Пример. Пусть задано выражение x → y, зависящее от двух переменных x и y, и таблица истинности:

 

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

 

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


Ответ:

3
Задание 3 № 13533

На ри­сун­ке схема дорог Н-ского рай­о­на изоб­ра­же­на в виде графа, в таб­ли­це со­дер­жат­ся све­де­ния о длине этих дорог в ки­ло­мет­рах.

 

П1П2П3П4П5П6П7П8
П1152018
П21525
П3252422
П42012
П5131617
П6241315
П71216
П818221715

 

Так как таб­ли­цу и схему ри­со­ва­ли не­за­ви­си­мо друг от друга, ну­ме­ра­ция населённых пунк­тов в таб­ли­це никак не свя­за­на с бук­вен­ны­ми обо­зна­че­ни­я­ми на графе. Опре­де­ли­те длину до­ро­ги от пунк­та В до пунк­та Е. В от­ве­те за­пи­ши­те целое число.


Ответ:

4
Задание 4 № 1403

Ниже при­ве­де­ны фраг­мен­ты таб­лиц базы дан­ных кан­це­ляр­ско­го ма­га­зи­на:

 

 Из­де­лие  Ар­ти­кул 
 Ав­то­руч­ка 
 1948 
 Фло­ма­стер 
 2537 
 Ка­ран­даш 
 3647 
 Фло­ма­стер 
 4758 
 Ав­то­руч­ка 
 5748 
 Ка­ран­даш 
 8457 

 Ар­ти­кул  Раз­мер  Цвет  Цена 
 8457 
 ма­лень­кий  крас­ный 
 5 
 2537 
 боль­шой  синий 
 9 
 5748 
 боль­шой  синий 
 8 
 3647 
 боль­шой  синий 
 8 
 4758 
 ма­лень­кий  зелёный 
 5 
 3647 
 боль­шой  зелёный 
 9 
 1948 
 ма­лень­кий  синий 
 6 
 3647 
 боль­шой  крас­ный 
 8 
 1948 
 ма­лень­кий  крас­ный 
 6 

 

Сколь­ко раз­ных ка­ран­да­шей продаётся в ма­га­зи­не?


Ответ:

5
Задание 5 № 11234

По каналу связи передаются сообщения, содержащие только шесть букв: А, B, C, D, E, F. Для передачи используется неравномерный двоичный код, удовлетворяющий условию Фано. Для букв A, B, C используются такие кодовые слова: А – 11, B – 101, C – 0. Какова наименьшая возможная суммарная длина всех кодовых слов?

 

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


Ответ:

6
Задание 6 № 13733

На вход ал­го­рит­ма подаётся на­ту­раль­ное число N. Ал­го­ритм стро­ит по нему новое число R сле­ду­ю­щим об­ра­зом.

1) Стро­ит­ся дво­ич­ная за­пись числа N.

2) К этой за­пи­си до­пи­сы­ва­ют­ся спра­ва ещё два раз­ря­да по сле­ду­ю­ще­му пра­ви­лу:

     а) скла­ды­ва­ют­ся все цифры дво­ич­ной за­пи­си числа N, и оста­ток от де­ле­ния суммы на 2 до­пи­сы­ва­ет­ся в конец числа (спра­ва). На­при­мер, за­пись 11100 пре­об­ра­зу­ет­ся в за­пись 111001;

     б) над этой за­пи­сью про­из­во­дят­ся те же дей­ствия – спра­ва до­пи­сы­ва­ет­ся оста­ток от де­ле­ния суммы её цифр на 2.

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

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


Ответ:

7
Задание 7 № 1616

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

 

ТЦЯнварьФевральМартАпрель
Продано,
штук
Цена,
руб.
Продано,
штук
Цена,
руб.
Продано,
штук
Цена,
руб.
Продано,
штук
Цена,
руб.
Эдельвейс514117515415
Покупочка613216611414
Кошелек217514415118
Солнечный812713711713
 Продано всего 21152216
 Средняя цена 14151315

 

Известно, что весь поступивший от поставщика в текущем месяце товар реализуется в этом же месяце.

В каком месяце выручка поставщика данного товара была максимальна?


Ответ:

8
Задание 8 № 3241

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

 

 

Бей­сикPython

DIM N, S AS INTEGER

N = 1

S = 0

WHILE N <= 101

    S = S + 7

    N = N + 1

WEND

PRINT S

n = 1

s = 0

while n <= 101:

    s += 7

    n += 1

print(s)

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

var n, s: integer;

begin

    n := 1;

    s := 0;

    while n <= 101 do

    begin

        s := s + 7;

        n := n + 1;

    end;

    writeln(s);

end.

алг

нач

    цел n, s

    n := 1

    s := 0

    нц пока n <= 101

        s := s + 7

        n := n + 1

    кц

    вывод s

кон

Си++

#include <iostream>

using namespace std;

int main() {

    int n, s;

    n = 1, s = 0;

    while (n <= 101) {

        s = s + 7;

        n = n + 1;

    }

    cout << s << endl;

    return 0;

}

 


Ответ:

9
Задание 9 № 2509

Стереоаудиофайл передается со скоростью 32 000 бит/с. Файл был записан при среднем качестве звука: глубина кодирования – 16 бит, частота дискретизации – 48 000 измерений в секунду, время записи ─ 90 сек.Сколько времени будет передаваться файл? Время укажите в секундах.


Ответ:

10
Задание 10 № 3193

Все 5-бук­вен­ные слова, со­став­лен­ные из букв А, О, У, за­пи­са­ны в ал­фа­вит­ном по­ряд­ке. Вот на­ча­ло спис­ка:

 

1. ААААА

2. ААААО

3. ААААУ

4. АААОА

……

 

За­пи­ши­те слово, ко­то­рое стоит на 210-м месте от на­ча­ла спис­ка.


Ответ:

11
Задание 11 № 11112

Ниже на пяти язы­ках про­грам­ми­ро­ва­ния за­пи­сан ре­кур­сив­ный ал­го­ритм F.

 

Бей­сикPython

SUB F(n)

  IF n > 0 THEN

    PRINT "*"

    F(n - 1)

    F(n \ 3)

  END IF

END SUB

def F(n):

    if n > 0:

        print("*")

        F(n - 1)

        F(n // 3)

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

алг F(цел n)

нач

  если n > 0 то

    вывод "*"

    F(n - 1)

    F(div(n, 3))

  все

кон

procedure F(n: integer);

begin

  if n > 0 then

  begin

    writeln('*');

    F(n - 1);

    F(n div 3)

  end

end

Си

void F(int n)

{

  if (n > 0)

  {

    printf("*");

    F(n - 1);

    F(n / 3);

  }

}

 

 

Сколь­ко сим­во­лов «звёздоч­ка» будет на­пе­ча­та­но на экра­не при вы­пол­не­нии вы­зо­ва F(6)?


Ответ:

12
Задание 12 № 2237

В терминологии сетей TCP/IP маской подсети называется 32-разрядное двоичное число, определяющее, какие именно разряды IP-адреса компьютера являются общими для всей подсети - в этих разрядах маски стоит 1. Обычно маски записываются в виде четверки десятичных чисел - по тем же правилам, что и IP-адреса. Для некоторой подсети используется маска 255.255.255.192. Сколько различных адресов компьютеров теоретически допускает эта маска, если два адреса (адрес сети и широковещательный) не используют?


Ответ:

13
Задание 13 № 7670

При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий из 11 символов и содержащий только символы А, Б, В, Г, Д, Е. Каждый такой пароль в компьютерной программе записывается минимально возможным и одинаковым целым количеством байт, при этом используют посимвольное кодирование и все символы кодируются одинаковым и минимально возможным количеством бит. Определите, сколько байт необходимо для хранения 20 паролей.


Ответ:

14
Задание 14 № 16389

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

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

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

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

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

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

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

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

 

Цикл

ПОКА условие

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

КОНЕЦ ПОКА

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

 

Какая строка получится в результате применения приведённой ниже программы к строке, состоящей из 77 единиц?

 

НАЧАЛО

    ПОКА нашлось (11111)

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

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

    КОНЕЦ ПОКА

КОНЕЦ


Ответ:

15
Задание 15 № 3509

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


Ответ:

16
Задание 16 № 14702

В какой си­сте­ме счис­ле­ния вы­пол­ня­ет­ся ра­вен­ство 12 · 13 = 222?

В от­ве­те ука­жи­те число – ос­но­ва­ние си­сте­мы счис­ле­ния.


Ответ:

17
Задание 17 № 7928

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

 

ЗапросНайдено страниц, тыс.
Новосибирск & (Красноярск & Хабаровск | Норильск)570
Новосибирск & Норильск214
Новосибирск & Красноярск & Хабаровск & Норильск68

 

Какое количество страниц (в тыс.) будет найдено по запросу

 

Новосибирск & Красноярск & Хабаровск?

 

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


Ответ:

18
Задание 18 № 7929

Эле­мен­та­ми мно­жеств А, P, Q яв­ля­ют­ся на­ту­раль­ные числа, причём P = {2, 4, 6, 8, 10, 12, 14, 16, 18, 20}, Q = {3, 6, 9, 12, 15, 18, 21, 24, 27, 30}. Из­вест­но, что вы­ра­же­ние

 

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

 

ис­тин­но (то есть при­ни­ма­ет зна­че­ние 1) при любом зна­че­нии пе­ре­мен­ной х. Опре­де­ли­те наи­боль­шее воз­мож­ное ко­ли­че­ство эле­мен­тов в мно­же­стве A.


Ответ:

19
Задание 19 № 3373

В программе описан двухмерный целочисленный массив A [1..6,1..6]. Ниже представлен фрагмент этой программы, в котором изменяются значения элементов массива.

 

БейсикPython

FOR n = 1 TO 6

    FOR m = 1 TO 6

        A(n,m) = A(m,n)+2*n-m

    NEXT m

NEXT n

for n in range(1, 7):

    for m in range(1, 7):

        A[n,m] = A[m,n]+2*n-m

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

for n:= 1 to 6 do

    for m:=1 to 6 do begin

        A[n,m]:= A[m,n]+2*n-m;

    end;

нц для n от 1 до 6

    нц для m от 1 до 6

        A[n,m]:= A[m,n]+2*n-m

    кц

кц

Си++

for (n = 1; n <= 6; n++) {

    for (m = 1; m <= 6; m++) {

        A[n][m]= A[m][n]+2*n-m;

    }

}

 

 

До выполнения данного фрагмента программы значение A[4,3] было равно 10, а значение A[3,4] было равно 15. Чему будет равно значение A[4,3] после выполнения этого фрагмента программы?


Ответ:

20
Задание 20 № 13550

Ниже на пяти язы­ках про­грам­ми­ро­ва­ния за­пи­сан ал­го­ритм. По­лу­чив на вход число x, этот ал­го­ритм пе­ча­та­ет число M. Из­вест­но, что x > 150. Ука­жи­те наи­мень­шее такое (т. е. боль­шее 150) число x, при вводе ко­то­ро­го ал­го­ритм пе­ча­та­ет 30.

 

Бей­сикPython

DIM X, L, M AS INTEGER

INPUT X

L = 2*X-30

M = 2*X+30

WHILE L <> M

  IF L > M THEN

    L = L - M

  ELSE

    M = M - L

  END IF

WEND

PRINT M

x = int(input())

L = 2*x-30

M = 2*x+30

while L != M:

  if L > M:

    L = L - M

  else:

    M = M - L

print(M)

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

var x, L, M: integer;

begin

  readln(x);

  L := 2*x-30;

  M := 2*x+30;

  while L <> M do begin

    if L > M then

      L := L - M

    else

      M := M - L;

  end;

  writeln(M);

end.

алг

нач

    цел x, L, M

    ввод x

    L := 2*x-30

    M := 2*x+30

    нц пока L <> M

      если L > M

        то

          L := L - M

        иначе

          M := M - L

      все

    кц

    вывод M

кон

Си++

#include <iostream>

using namespace std;

int main()

{

    int x, L, M;

    cin >> x;

    L = 2*x-30;

    M = 2*x+30;

    while (L != M) {

      if (L > M)

        L = L - M;

      else

        M = M - L;

    }

    cout « M « endl;

    return 0;

}

 


Ответ:

21
Задание 21 № 3336

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

 

 

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

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

A =-20: B = 20

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 = 9*(x-15)*(x+17)+2

END FUNCTION

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

    Function F(x:integer): integer;

        begin

            F := 9*(x-15)*(x+17)+2

        end;

begin

    a :=-20; b := 20;

    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 9*(x-15)*(x+17)+2;

}

int main()

{

    int a, b, t, M, R;

    a =-20; b = 20;

    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 :=-20; b := 20

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

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

если F(t) < R

то

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

все

кц

вывод R

кон

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

нач

знач := 9*(x-15)*(x+17)+2

кон

Python

def f(x):

    return 9*(x-15)*(x+17)+2

a =-20

b = 20

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 № 11123

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

 

1. Вычти 2

2. Вычти 5

 

Первая из них уменьшает число на экране на 2, вторая уменьшает его на 5. Программа для Вычитателя – это последовательность команд. Сколько есть программ, которые число 22 преобразуют в число 2?


Ответ:

23
Задание 23 № 6788

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

 

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

(¬x1 ∧ y1 ∧ z1) ∨ (x1 ∧ ¬y1 ∧ z1) ∨ (x1 ∧ y1 ∧ ¬z1) = 1

(¬x2 ∧ y2 ∧ z2) ∨ (x2 ∧ ¬y2 ∧ z2) ∨ (x2 ∧ y2 ∧ ¬z2) = 1

(¬x3 ∧ y3 ∧ z3) ∨ (x3 ∧ ¬y3 ∧ z3) ∨ (x3 ∧ y3 ∧ ¬z3) = 1

(¬x4 ∧ y4 ∧ z4) ∨ (x4 ∧ ¬y4 ∧ z4) ∨ (x4 ∧ y4 ∧ ¬z4) = 1

 

В ответе не нужно перечислять все различные наборы значений переменных

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


Ответ:

24
Задание 24 № 13608

Дано натуральное число A > 0. Требуется вывести такое минимально возможное нечётное натуральное число K, при котором сумма 1*2 + 3*4 + … + K*(K+1) окажется больше A.

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

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

 

 

БейсикPython

DIM A,S,K AS INTEGER

INPUT A

S = 0

K = 1

WHILE S <= A

    S = S + K*(K+1)

    K = K + 1

WEND

PRINT K

END

a = int(input())

s = 0

k = 1

while s <= a:

    s = s + k*(k+1)

    k = k + 1

print(k)

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

var a, s, k: integer;

begin

    read(a);

    s := 0;

    k := 1;

    while s <= a do begin

        s := s+k*(k+1);

        k := k+1;

    end;

    writeln(k)

end.

алг

нач

    цел a, s, k

    ввод a

    s := 0

    k := 1

    нц пока s <= a

        s := s+k*(k+1)

        k := k+1

    кц

    вывод k

кон

Си++

#include <iostream>

using namespace std;

int main() {

    int a, s, k;

    cin >> a;

    s = 0;

    k = 1;

    while (s <= a) {

        s = s+k*(k+1);

        k = k+1;

    }

    cout « k « endl;

    return 0;

}

 

 

 

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

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

2. Укажите два наименьших значения A, при которых программа выведет верный ответ.

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

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


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

25
Задание 25 № 15641

Дан целочисленный массив из 40 элементов. Элементы массива могут принимать целые значения от 0 до 10 000 включительно. Опишите на естественном языке или на одном из языков программирования алгоритм, который находит количество элементов массива, меньших 100, не делящихся на 3, после чего заменяет в массиве соответствующие значения на найденное количество. После чего выводит полученный массив на экран.

 

 

БейсикPython

CONST N = 40

DIM A (1 TO N) AS INTEGER

DIM I, J, K AS INTEGER

FOR I = 1 TO N

     INPUT A(I)

NEXT I

     END

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

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

# целочисленные

# переменные j, k

a = []

n = 40

for i in range(n):

     a.append(int(input()))

...

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

const n = 40;

var

    a: array [0..n-1] of integer;

     i, j, k: integer;

begin

    for i := 0 to n-1 do

        readln(a[i]);

     ...

end.

алг

нач

цел N = 40

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

цел i, j, k

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

ввод a[i]

кц

...

кон

Си++

#include <iostream>

using namespace std;

#define n 40

     int main() {

     int a[n]; int i, j, k;

     for (i = 0; i < n; i++) std::cin >> a[i];

    ...

     return 0;

}

 


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

26
Задание 26 № 17390

Два иг­ро­ка, Петя и Ваня, иг­ра­ют в сле­ду­ю­щую игру. Перед иг­ро­ка­ми лежат две кучи кам­ней. Иг­ро­ки ходят по оче­ре­ди, пер­вый ход де­ла­ет Петя. За один ход игрок может убрать из одной из куч один ка­мень или умень­шить ко­ли­че­ство кам­ней в куче в два раза (если ко­ли­че­ство кам­ней в куче нечётно, остаётся на 1 ка­мень боль­ше, чем уби­ра­ет­ся). На­при­мер, пусть в одной куче 6, а в дру­гой 9 кам­ней; такую по­зи­цию мы будем обо­зна­чать (6, 9). За один ход из по­зи­ции (6, 9) можно по­лу­чить любую из четырёх по­зи­ций: (5, 9), (3, 9), (6, 8), (6, 5).

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

В на­чаль­ный мо­мент в пер­вой куче было 10 кам­ней, во вто­рой куче — S кам­ней, S > 10.

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

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

За­да­ние 1.

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

За­да­ние 2.

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

За­да­ние 3.

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

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


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

27
Задания Д19 C4 № 3793

На вход про­грам­ме (как ва­ри­ант, из вход­но­го файла text.dat) подаётся текст на ан­глий­ском языке. Ввод этих сим­во­лов за­кан­чи­ва­ет­ся точ­кой (дру­гие сим­во­лы, от­лич­ные от «.» во вход­ных дан­ных от­сут­ству­ют; в про­грам­ме на языке Бей­сик сим­во­лы можно вво­дить по од­но­му в стро­ке, пока не будет вве­де­на точка). Тре­бу­ет­ся на­пи­сать как можно более эф­фек­тив­ную про­грам­му (ука­жи­те ис­поль­зу­е­мую вер­сию языка про­грам­ми­ро­ва­ния, на­при­мер, Borland Pascal 7.0), ко­то­рая будет опре­де­лять и вы­во­дить на экран, какая ан­глий­ская буква встре­ча­ет­ся во вход­ной по­сле­до­ва­тель­но­сти чаще всего и сколь­ко имен­но раз. Строч­ные и про­пис­ные буквы при этом не раз­ли­ча­ют­ся. Если таких букв не­сколь­ко, то про­грам­ма долж­на вы­во­дить на экран ту из них, ко­то­рая стоит по ал­фа­ви­ту рань­ше.

На­при­мер, пусть файл со­дер­жит сле­ду­ю­щую ин­фор­ма­цию:

It is not a simple task. Yes!

Тогда чаще всего встре­ча­ют­ся буквы I, S, T. (слово Yes в под­сче­те не участ­ву­ет, так как рас­по­ло­же­но после точки). Сле­до­ва­тель­но, в дан­ном слу­чае, про­грам­ма долж­на вы­ве­сти

I 3.


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