Вариант № 1701038

ЕГЭ 16.06.2016 по информатике. Основная волна. Вариант 41 (Часть 2)

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


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



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

Уче­ник на­пи­сал про­грам­му, опре­де­ля­ю­щую, какой сте­пе­нью числа 4 яв­ля­ет­ся вве­ден­ное. На­при­мер, для 16 это 2, так как 42  =  16. Если же такой сте­пе­ни нет, то не­об­хо­ди­мо вы­ве­сти со­об­ще­ние "Не су­ще­ству­ет". К со­жа­ле­нию, уче­ник на­пи­сал про­грам­му не­вер­но.

 

Бей­сикPython

DIM N, K AS INTEGER

INPUT N

K = 0

WHILE K MOD 4 = 0

    N = N \ 4

    K = K + 1

WEND

IF N <= 4 THEN

    PRINT K

ELSE

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

END IF

END

n = int(input())

k = 0

while k%4 == 0:

    n = n // 4

    k = k + 1

if n <= 4:

    print(k)

else:

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

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

var n, k: integer;

begin

    read(n);

    k := 0;

    while k mod 4 = 0 do begin

        n := n div 4;

        k := k + 1;

    end;

    if n <= 4 then

        writeln(k)

    else

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

end.

алг

нач

    цел n, k

    ввод n

    k := 0

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

        n := div(n,4)

        k := k + 1

    кц

    если n <= 4

        то вывод k

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

    все

кон

Си++

#include <iostream>

using namespace std;

int main(){

    int n, k;

    cin >> n;

    k = 0;

    while (k%4 == 0) {

        n = n / 4;

        k = k + 1;

    }

    if (n <= 4)

        cout « k « endl;

    else

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

    return 0;

}

 

 

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

 

1.  Что вы­даст про­грам­ма при вводе числа 64?

2.  При вводе ка­ко­го числа про­грам­ма вы­даст вер­ный ответ? Ука­жи­те этот ответ.

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


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

2
Тип Д25 C2 № 11321
i

Дан мас­сив из 2000 эле­мен­тов. Хо­ро­шей парой на­зы­ва­ет­ся пара эле­мен­тов, из ко­то­рых оба окан­чи­ва­ют­ся на 9, при этом эле­мен­ты яв­ля­ют­ся со­се­дя­ми. По­счи­тай­те ко­ли­че­ство хо­ро­ших пар. Каж­дый эле­мент по мо­ду­лю не пре­вы­ша­ет 30 000. В от­ве­те ука­жи­те кусок про­грам­мы на месте мно­го­то­чия. Раз­ре­ше­но не ис­поль­зо­вать не­ко­то­рые из ини­ци­а­ли­зи­ро­ван­ных пе­ре­мен­ных, но за­пре­ще­но поль­зо­вать­ся пе­ре­мен­ны­ми, не ука­зан­ны­ми ниже.

 

Бей­сикPython

CONST N = 2000

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 = 2000

for i in range(0, n):

a.append(int(input()))

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

const

N = 2000;

var

a: array [1..N] of

integer;

i, j, k: integer;

begin

for i := 1 to N do

readln(a[i]);

end.

алг

нач

цел N = 2000

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

цел i, j, k

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

ввод a[i]

кц

кон

Си++

#include

#define N 2000

int main() {

int a[N];

int i, j, k;

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

cin >> a[i];

return 0;

}


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

3
Тип Д26 C3 № 11322
i

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

Игра за­кан­чи­ва­ет­ся, когда в куче не мень­ше 42 кам­ней.

При этом, если число кам­ней в куче не пре­вы­ша­ет 74, то по­беж­да­ет игрок, сде­лав­ший по­след­ний ход, иначе вы­иг­ры­ва­ет его оп­по­нент. В на­чаль­ный мо­мент в куче было S кам­ней; 1 ≤ S ≤ 41.

 

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

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

 

За­да­ние 1

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

б)   У кого есть вы­иг­рыш­ная стра­те­гия при S = 38, 39, 40?

 

За­да­ние 2

Кто из иг­ро­ков имеет вы­иг­рыш­ную стра­те­гию при S = 19, 20?

 

За­да­ние 3

Кто из иг­ро­ков имеет вы­иг­рыш­ную стра­те­гию при S = 18?

 

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


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

4
Тип Д27 C4 № 11323
i

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

 

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

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

 

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

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

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

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

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

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

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

 

За­да­ча А. Ко­ли­че­ство пар из­вест­но за­ра­нее и равно 6. Числа не пре­вы­ша­ют 30 000.

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

5 4

3 2

1 1

18 3

11 12

2 5

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

23

 

За­да­ча Б. Ко­ли­че­ство пар N не из­вест­но за­ра­нее и может при­ни­мать зна­че­ния 2 <= N <= 200 000. На вход по­да­ет­ся сна­ча­ла ко­ли­че­ство пар, затем сами пары. Числа по мо­ду­лю не пре­вы­ша­ют 30 000.

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

6

5 4

3 2

1 1

18 3

11 12

2 5

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

23


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