Вариант № 5185917

Демонстрационная версия ЕГЭ−2020 по информатике

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


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



Версия для печати и копирования в MS Word
1
Тип Д1 № 19050
i

Сколь­ко су­ще­ству­ет на­ту­раль­ных чисел x, для ко­то­рых вы­пол­ня­ет­ся не­ра­вен­ство 100110112 < x < 100111112? В от­ве­те ука­жи­те толь­ко ко­ли­че­ство чисел, сами числа пи­сать не нужно.


Ответ:

2
Тип 2 № 19051
i

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

 

(x ∧ ¬y) ∨ (xz) ∨ ¬w
01100
00
1010

 

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

 

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

 

При­мер. Функ­ция за­да­на вы­ра­же­ни­ем ¬xy, за­ви­ся­щим от двух пе­ре­мен­ных, а фраг­мент таб­ли­цы имеет сле­ду­ю­щий вид.

 

¬xy
010

 

В этом слу­чае пер­во­му столб­цу со­от­вет­ству­ет пе­ре­мен­ная y, а вто­ро­му столб­цу  — пе­ре­мен­ная x. В от­ве­те сле­ду­ет на­пи­сать yx.


Ответ:

3
Тип 1 № 19052
i

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

 

П1П2П3П4П5П6П7
П197
П2511
П312
П49541315
П54108
П611121310
П77158

 

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


Ответ:

4
Тип Д3 № 19053
i

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

 

 

Таб­ли­ца 1
IDФа­ми­лия_И. О.ПолГод рож­де­ния
14Крас­но­ва Н. А.Ж1942
24Ска­на­ви И. П.М1943
25Ска­на­ви П. И.М1973
26Ска­на­ви П. П.М1996
34Ку­щен­ко А. И.Ж1964
35Ку­щен­ко В. С.Ж1987
36Ку­щен­ко С. С.М1964
44Ле­бедь А. С.Ж1941
45Ле­бедь В. А.М1953
46Гросс О. С.Ж1992
47Гросс П. О.М2009
54Клыч­ко А. П.Ж1993
64Крот П. А.Ж1964
............

 

Таб­ли­ца 2
ID_Ро­ди­те­ляID_Ре­бен­ка
2425
4425
2526
6426
2434
4434
3435
3635
1436
3446
3646
2554
6454
......


Ответ:

5
Тип 4 № 19054
i

Для ко­ди­ро­ва­ния не­ко­то­рой по­сле­до­ва­тель­но­сти, со­сто­я­щей из букв К, Л, М, Н, П, Р, ре­ши­ли ис­поль­зо­вать не­рав­но­мер­ный дво­ич­ный код, удо­вле­тво­ря­ю­щий усло­вию Фано. Для букв К, Л, М, Н ис­поль­зо­ва­ли со­от­вет­ствен­но ко­до­вые слова 000, 001, 010, 11. Для двух остав­ших­ся букв  — П и Р  — длины ко­до­вых слов не­из­вест­ны. Ука­жи­те крат­чай­шее воз­мож­ное ко­до­вое слово для буквы П, при ко­то­ром код будет удо­вле­тво­рять усло­вию Фано. Если таких кодов не­сколь­ко, ука­жи­те код с наи­мень­шим чис­ло­вым зна­че­ни­ем.

 

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


Ответ:

6
Тип 5 № 19055
i

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

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

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

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

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

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


Ответ:

7
Тип Д7 № 19056
i

Дан фраг­мент элек­трон­ной таб­ли­цы. Из ячей­ки B3 в ячей­ку C2 была ско­пи­ро­ва­на фор­му­ла. При ко­пи­ро­ва­нии ад­ре­са ячеек в фор­му­ле ав­то­ма­ти­че­ски из­ме­ни­лись. Каким стало чис­ло­вое зна­че­ние фор­му­лы в ячей­ке C2?

 

АBCDE
1110100100010000
2220200020000
33=A$2+D$3300300030000
4440400400040000

 

При­ме­ча­ние: знак $ обо­зна­ча­ет аб­со­лют­ную ад­ре­са­цию.


Ответ:

8
Тип Д6 № 19057
i

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

 

Бей­сикPython

DIM S, N AS INTEGER

S = 0

N = 1

WHILE S < 51

    S = S + 11

    N = N * 2

WEND

PRINT N

s = 0

n = 1

while s < 51:

    s = s + 11

    n = n * 2

print(n)

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

var s, n: integer;

begin

    s := 0;

    n := 1;

    while s < 51 do

    begin

        s := s + 11;

        n := n * 2

    end;

    writeln(n)

end.

алг

нач

    цел n, s

    s := 0

    n := 1

    нц пока s < 51

        s := s + 11

        n := n * 2

    кц

    вывод n

кон

Си++

#include <iostream>

using namespace std;

int main()

{ int s = 0, n = 1;

    while (s < 51) { s = s + 11; n = n * 2; }

    cout << n << endl;

    return 0;

}


Ответ:

9
Тип 7 № 19058
i

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


Ответ:

10
Тип 8 № 19059
i

Все 4-⁠бук­вен­ные слова, в со­ста­ве ко­то­рых могут быть буквы Н, О, Т, К, И, за­пи­са­ны в ал­фа­вит­ном по­ряд­ке и про­ну­ме­ро­ва­ны, на­чи­ная с 1.

Ниже при­ве­де­но на­ча­ло спис­ка.

1.  ИИИИ

2.  ИИИК

3.  ИИИН

4.  ИИИО

5.  ИИИТ

6.  ИИКИ

...

 

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


Ответ:

11
Тип Д16 № 19060
i

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

 

Бей­сикPython

SUB F(n)

    PRINT n,

    IF n >= 3 THEN

        F(n \ 2)

        F(n - 1)

    END IF

END SUB

def F(n):

    print(n, end='')

    if n >= 3:

        F(n // 2)

        F(n - 1)

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

procedure F(n: integer);

begin

    write(n);

    if n >= 3 then

    begin

        F(n div 2);

        F(n - 1)

    end

end;

алг F(цел n)

нач

    вывод n

    если n >= 3 то

        F(div(n, 2))

        F(n - 1)

    все

кон

Си++

void F(int n) {

    std::cout << n;

    if (n >= 3) {

        F(n / 2);

        F(n - 1);

    }

}

 

 

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


Ответ:

12
Тип 13 № 19061
i

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

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

Для узла с IP-⁠ад­ре­сом 111.81.27.224 адрес сети равен 111.81.27.192. Чему равен по­след­ний (самый пра­вый) байт маски? Ответ за­пи­ши­те в виде де­ся­тич­но­го числа.


Ответ:

13

При ре­ги­стра­ции в ком­пью­тер­ной си­сте­ме каж­до­му поль­зо­ва­те­лю выдаётся иден­ти­фи­ка­тор, со­сто­я­щий из 15 сим­во­лов и со­дер­жа­щий толь­ко сим­во­лы из 8-⁠сим­воль­но­го на­бо­ра: А, В, C, D, Е, F, G, H. В базе дан­ных для хра­не­ния све­де­ний о каж­дом поль­зо­ва­те­ле от­ве­де­но оди­на­ко­вое и ми­ни­маль­но воз­мож­ное целое число байт. При этом ис­поль­зу­ют по­сим­воль­ное ко­ди­ро­ва­ние иден­ти­фи­ка­то­ров, все сим­во­лы ко­ди­ру­ют оди­на­ко­вым и ми­ни­маль­но воз­мож­ным ко­ли­че­ством бит. Кроме соб­ствен­но иден­ти­фи­ка­то­ра, для каж­до­го объ­ек­та в си­сте­ме хра­нят­ся до­пол­ни­тель­ные све­де­ния, для чего от­ве­де­но 24 байт на один объ­ект.

Опре­де­ли­те объём па­мя­ти (в бай­тах), не­об­хо­ди­мый для хра­не­ния све­де­ний о 20 объ­ек­тах. В от­ве­те за­пи­ши­те толь­ко целое число  — ко­ли­че­ство байт.


Ответ:

14

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

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

Эта ко­ман­да за­ме­ня­ет в стро­ке пер­вое слева вхож­де­ние це­поч­ки v на це­поч­ку w. На­при­мер, вы­пол­не­ние ко­ман­ды за­ме­нить (111, 27) пре­об­ра­зу­ет стро­ку 05111150 в стро­ку 0527150.

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

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

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

ис­пол­ни­те­ля при этом не из­ме­ня­ет­ся.

 

Цикл

    ПОКА усло­вие

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

    КОНЕЦ ПОКА

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

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

    ЕСЛИ усло­вие

        ТО ко­ман­да1

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

    КОНЕЦ ЕСЛИ

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

 

Какая стро­ка по­лу­чит­ся в ре­зуль­та­те при­ме­не­ния при­ведённой ниже про­грам­мы к стро­ке, со­сто­я­щей из 70 иду­щих под­ряд цифр 8? В от­ве­те за­пи­ши­те по­лу­чен­ную стро­ку.

НА­ЧА­ЛО

    ПОКА на­шлось (2222) ИЛИ на­шлось (8888)

        ЕСЛИ на­шлось (2222)

            ТО за­ме­нить (2222, 88)

            ИНАЧЕ за­ме­нить (8888, 22)

        КОНЕЦ ЕСЛИ

    КОНЕЦ ПОКА

КОНЕЦ


Ответ:

15
Тип Д13 B13 № 19064
i

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

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


Ответ:

16
Тип 14 № 19065
i

Сколь­ко еди­ниц со­дер­жит­ся в дво­ич­ной за­пи­си зна­че­ния вы­ра­же­ния: 48 + 28 − 8?


Ответ:

17
Тип Д17 № 19066
i

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

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

 

За­просНай­де­но стра­ниц
(в сот­нях тысяч)
Поле54
Пше­ни­ца40
На­пряжённость44
Поле & Пше­ни­ца30
На­пряжённость & Поле14
На­пряжённость & Пше­ни­ца0

 

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

 

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


Ответ:

18
Тип 15 № 19067
i

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

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

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


Ответ:

19
Тип Д19 № 19068
i

В про­грам­ме ис­поль­зу­ет­ся од­но­мер­ный це­ло­чис­лен­ный мас­сив A с ин­дек­са­ми от 0 до 11. Зна­че­ния эле­мен­тов равны 20, 19, 17, 41, 23, 12, 24, 16, 4, 13, 6, 15 со­от­вет­ствен­но, т. е. A[0] = 20, A[1] = 19 и т. д. Опре­де­ли­те зна­че­ние пе­ре­мен­ной s после вы­пол­не­ния сле­ду­ю­ще­го фраг­мен­та этой про­грам­мы (за­пи­сан­но­го ниже на пяти язы­ках про­грам­ми­ро­ва­ния).

Бей­сикPython

s = 0

n = 0

FOR i = 0 TO 11

    IF A(i) <= A(n) THEN

        s = s + i

        t = A(i)

        A(i) = A(n)

        A(n) = t

    END IF

NEXT i

s = 0

n = 0

for i in range(12):

    if A[i] <= A[n]:

        s += i

        t = A[i]

        A[i] = A[n]

        A[n] = t

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

s := 0;

n := 0;

for i := 0 to 11 do

    if A[i] <= A[n] then

    begin

        s := s + i;

        t := A[i];

        A[i] := A[n];

        A[n] := t

    end;

s := 0

n := 0

нц для i от 0 до 11

    если A[i] <= A[n] то

        s := s + i

        t := A[i]

        A[i] := A[n]

        A[n] := t

    все

кц

Си++

n = 0;

for (int i = 0; i < 12; i++)

    if (A[i] <= A[n]){

        s += i;

        t = A[i];

        A[i] = A[n];

        A[n] = t;

    }


Ответ:

20
Тип Д22 № 19069
i

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

 

Бей­сикPython

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 + 1

    ENDIF

    X = X \ 2

WEND

PRINT L

PRINT M

x = int(input())

L = 0

M = 0

while x > 0:

    M = M + 1

    if x % 2 == 0:

        L = L + 1

    x = x // 2

print(L)

print(M)

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

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 + 1;

        x := x div 2;

    end;

    writeln(L);

    writeln(M);

end.

алг

нач

    цел x, L, M

    ввод x

    L := 0

    M := 0

    нц пока x > 0

        M := M + 1

        если mod(x,2) = 0

            то

                L := L + 1

        все

        x := div(x,2)

    кц

    вывод L, нс, 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 + 1;

        }

        x = x / 2;

    }

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

    return 0;

}


Ответ:

21
Тип Д21 № 19070
i

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

Бей­сикPython

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

A = -20: B = 20

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 + 27

 

FUNCTION F(x)

    F = 2 * (x * x - 100) * (x * x - 100) + 5

END FUNCTION

def F(x):

    return 2 * (x * x - 100) * (x * x - 100) + 5

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

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

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

function F(x: longint): longint;

    begin

        F := 2 * (x * x - 100) * (x * x - 100) + 5;

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

end.

алг

нач

    цел 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)

        все

    кц

    вывод M + 27

кон

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

нач

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

кон

Си++

#include <iostream>

using namespace std;

 

long F(long x)

{

    return 2 * (x * x - 100) * (x * x - 100) + 5;

}

int main()

{

    long 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 << M + 27 << endl;

    return 0;

}


Ответ:

22
Тип 23 № 19071
i

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

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

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

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

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

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

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


Ответ:

23
Тип Д23 № 19072
i

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

(¬(x1 ≡ y1)) ≡ (x2 ≡ y2)

(¬(x2 ≡ y2)) ≡ (x3 ≡ y3)

(¬(x7 ≡ y7)) ≡ (x8 ≡ y8)

 

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


Ответ:

24
Тип Д24 C1 № 16051
i

На об­ра­бот­ку по­сту­па­ет на­ту­раль­ное число, не пре­вы­ша­ю­щее 109. Нужно на­пи­сать про­грам­му, ко­то­рая вы­во­дит на экран ми­ни­маль­ную чётную цифру этого числа. Если в числе нет чётных цифр, тре­бу­ет­ся на экран вы­ве­сти «NO». Про­грам­мист на­пи­сал про­грам­му не­пра­виль­но. Ниже эта про­грам­ма для Ва­ше­го удоб­ства при­ве­де­на на пяти язы­ках про­грам­ми­ро­ва­ния.

Бей­сикPython

DIM N, DIGIT, MINDIGIT AS LONG

INPUT N

MINDIGIT = N MOD 10

WHILE N > 0

    DIGIT = N MOD 10

    IF DIGIT MOD 2 = 0 THEN

        IF DIGIT < MINDIGIT THEN

            MINDIGIT = DIGIT

        END IF

    END IF

    N = N \ 10

WEND

IF MINDIGIT = 0 THEN

    PRINT "NO"

ELSE

    PRINT MINDIGIT

END IF

N = int(input())

minDigit = N % 10

while N > 0:

    digit = N % 10

    if digit % 2 == 0:

        if digit < minDigit:

            minDigit = digit

    N = N // 10

if minDigit == 0:

    print("NO")

else:

    print(minDigit)

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

var N,digit,minDigit: longint;

begin

    readln(N);

    minDigit := N mod 10;

    while N > 0 do

    begin

        digit := N mod 10;

        if digit mod 2 = 0 then

            if digit < minDigit then

                minDigit := digit;

        N := N div 10;

    end;

    if minDigit = 0 then

        writeln('NO')

    else

        writeln(minDigit);

end.

алг

нач

    цел N, digit, minDigit

    ввод N

    minDigit := mod(N,10)

    нц пока N > 0

        digit := mod(N,10)

        если mod(digit, 2) = 0 то

            если digit < minDigit то

                minDigit := digit

            все

        все

        N := div(N,10)

    кц

    если minDigit = 0 то

        вывод "NO"

    иначе

        вывод minDigit

    все

кон

Си++

#include <iostream>

using namespace std;

 

int main() {

        long N, digit, minDigit;

        cin >> N;

        minDigit = N % 10;

        while (N > 0) {

            digit = N % 10;

            if (digit % 2 == 0)

                if (digit < minDigit)

                    minDigit = digit;

            N = N / 10;

        }

        if (minDigit == 0)

            cout << "NO" << endl;

        else

            cout << minDigit << endl;

        return 0;

}

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

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

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

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

1)  вы­пи­ши­те стро­ку, в ко­то­рой сде­ла­на ошиб­ка;

2)  ука­жи­те, как ис­пра­вить ошиб­ку, т. е. при­ве­ди­те пра­виль­ный ва­ри­ант стро­ки.

Из­вест­но, что в тек­сте про­грам­мы можно ис­пра­вить ровно две стро­ки так, чтобы она стала ра­бо­тать пра­виль­но.

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

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


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

25
Тип Д25 C2 № 16052
i

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

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

14

6

11

18

9

24

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

9

6

9

18

9

24

 

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

 

Бей­сикPython

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

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

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

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

a = []

n = 30

for i in range(0, n):

    a.append(int(input()))

...

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

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.

алг

нач

    цел N = 30

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

    цел i, j, k

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

        ввод a[i]

    кц

    ...

 

кон

Си++

#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). В этом слу­чае Вы долж­ны ис­поль­зо­вать те же самые ис­ход­ные дан­ные и пе­ре­мен­ные, какие были пред­ло­же­ны в усло­вии (на­при­мер, в об­раз­це, за­пи­сан­ном на Ал­го­рит­ми­че­ском языке).


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

26
Тип Д26 C3 № 16053
i

Два иг­ро­ка, Петя и Ваня, иг­ра­ют в сле­ду­ю­щую игру. Перед иг­ро­ка­ми лежат две кучи кам­ней. Иг­ро­ки ходят по оче­ре­ди, пер­вый ход де­ла­ет Петя. За один ход игрок может до­ба­вить в одну из куч (по сво­е­му вы­бо­ру) один ка­мень или уве­ли­чить ко­ли­че­ство кам­ней в куче в три раза. На­при­мер, пусть в одной куче 10 кам­ней, а в дру­гой 7 кам­ней; такую по­зи­цию в игре будем обо­зна­чать (10, 7). Тогда за один ход можно по­лу­чить любую из четырёх по­зи­ций: (11, 7), (30, 7), (10, 8), (10, 21). Для того чтобы де­лать ходы, у каж­до­го иг­ро­ка есть не­огра­ни­чен­ное ко­ли­че­ство кам­ней.

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

В на­чаль­ный мо­мент в пер­вой куче было шесть кам­ней, во вто­рой куче  — S кам­ней; 1 ≤ S ≤ 61.

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

 

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

За­да­ние 1.

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

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

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

— Петя не может вы­иг­рать за один ход;

— Петя может вы­иг­рать своим вто­рым ходом не­за­ви­си­мо от того, как будет хо­дить Ваня.

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

За­да­ние 3. Ука­жи­те зна­че­ние S, при ко­то­ром од­но­вре­мен­но вы­пол­ня­ют­ся два усло­вия:

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

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

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

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

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


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

27
Тип Д27 C4 № 19076
i

На вход про­грам­мы по­сту­па­ет по­сле­до­ва­тель­ность из n целых по­ло­жи­тель­ных чисел. Рас­смат­ри­ва­ют­ся все пары эле­мен­тов по­сле­до­ва­тель­но­сти ai и aj, такие что i < j и ai > aj (пер­вый эле­мент пары боль­ше вто­ро­го; i и j  — по­ряд­ко­вые но­ме­ра чисел в по­сле­до­ва­тель­но­сти вход­ных дан­ных). Среди пар, удо­вле­тво­ря­ю­щих этому усло­вию, не­об­хо­ди­мо найти и на­пе­ча­тать пару с мак­си­маль­ной сум­мой эле­мен­тов, ко­то­рая де­лит­ся на m  =  120. Если среди най­ден­ных пар мак­си­маль­ную сумму имеют не­сколь­ко, то можно на­пе­ча­тать любую из них.

Опи­са­ние вход­ных и вы­ход­ных дан­ных

В пер­вой стро­ке вход­ных дан­ных задаётся ко­ли­че­ство чисел n (2 ≤ n ≤ 12 000).

В каж­дой из по­сле­ду­ю­щих n строк за­пи­са­но одно целое по­ло­жи­тель­ное число, не пре­вы­ша­ю­щее 10 000.

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

 

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

6

60

140

61

100

300

59

 

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

140 100

 

По­яс­не­ние. Из шести за­дан­ных чисел можно со­ста­вить три пары, сумма эле­мен­тов ко­то­рых де­лит­ся на m  =  120: 60 + 300, 140 + 100 и 61 + 59. Во вто­рой и тре­тьей из этих пар пер­вый эле­мент боль­ше вто­ро­го, но во вто­рой паре сумма боль­ше.

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

Про­грам­ма счи­та­ет­ся эф­фек­тив­ной по вре­ме­ни, если при од­но­вре­мен­ном уве­ли­че­нии ко­ли­че­ства эле­мен­тов по­сле­до­ва­тель­но­сти n и па­ра­мет­ра m в k раз время ра­бо­ты про­грам­мы уве­ли­чи­ва­ет­ся не более чем в k раз.

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

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

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

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

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


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