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




Вариант № 4982064

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


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


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

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


Ответ:

2
Задание 2 № 15097

Логическая функция F задаётся выражением (xz ) ∨ (x → (y ∧ z)).

Дан частично заполненный фрагмент, содержащий неповторяющиеся строки таблицы истинности функции F.

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

 

Переменная 1Переменная 2Переменная 3Функция
?????????F
000
10

 

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

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

 

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

 

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


Ответ:

3
Задание 3 № 15619

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

 

 

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


Ответ:

4
Задание 4 № 1401

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

 

 Школа  Фамилия 
 № 10  Иванов 
 № 10  Петров 
 № 10  Сидоров 
 № 50  Кошкин 
 № 150  Ложкин 
 № 150  Ножкин 
 № 200  Тарелкин 
 № 200  Мискин 
 № 250  Чашкин 
 Фамилия  Предмет  Диплом 
 Иванов  физика  I степени 
 Мискин  математика  III степени 
 Сидоров  физика  II степени 
 Кошкин  история  I степени 
 Ложкин  физика  II степени 
 Ножкин  история  I степени 
 Тарелкин  физика  III степени 
 Петров  история  I степени 
 Мискин  физика  I степени 

 

Сколько дипломов I степени получили ученики 10-й школы?


Ответ:

5
Задание 5 № 7746

Для кодирования некоторой последовательности, состоящей из букв А, Б, В, Г и Д, используется неравномерный двоичный код, позволяющий однозначно декодировать полученную двоичную последовательность. Вот этот код: А — 1; Б — 0100; В — 000; Г — 011; Д — 0101. Требуется сократить для одной из букв длину кодового слова так, чтобы код по-прежнему можно было декодировать однозначно. Коды остальных букв меняться не должны. Каким из указанных способов это можно сделать?

 

1) для буквы Г — 11

2) для буквы В — 00

3) для буквы Г — 01

4) это невозможно


Ответ:

6
Задание 6 № 17324

Автомат обрабатывает натуральное число N по следующему алгоритму:

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

2. Удаляется первая слева единица и все следующие непосредственно за ней нули. Если после этого в числе не остаётся цифр, результат этого действия считается равным нулю.

3. Полученное число переводится в десятичную запись.

4. Новое число вычитается из исходного, полученная разность выводится на экран.

Пример. Дано число N = 11. Алгоритм работает следующим образом.

1. Двоичная запись числа N: 1011.

2. Удаляется первая единица и следующий за ней ноль: 11.

3. Десятичное значение полученного числа 3.

4. На экран выводится число 11 – 3 = 8.

 

Сколько разных значений будет показано на экране автомата при последовательном вводе всех натуральных чисел от 10 до 1000?


Ответ:

7
Задание 7 № 1612

В электронной таблице Excel отражены данные о деятельности страховой компании за 4 месяца. Страховая компания осуществляет страхование жизни, недвижимости, автомобилей и финансовых рисков своих клиентов. Суммы полученных по каждому виду деятельности за эти месяцы страховых взносов (в тысячах рублей) также вычислены в таблице.

 

Страхование
жизни, тыс. р.
Страхование
автомобилей, тыс. р.
Страхование
фин. рисков, тыс. р.
Страхование
недвижимости, тыс. р.
Май1032011
Июнь24810
Июль4685
Август61274
Сумма22254330

 

Известно, что за эти 4 месяца компании пришлось выплатить двум клиентам по 20 000 рублей каждому.

Какова прибыль страховой компании в рублях за прошедшие 4 месяца?


Ответ:

8
Задание 8 № 7753

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

 

БейсикPython

DIM S, N AS INTEGER

S = 47

N = 1

WHILE S > 0

S = S - 9

N = N + 4

WEND

PRINT(N)

s = 47

n = 1

while s > 0:

    s = s - 9

    n = n + 4

print(n)

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

var s, n: integer;

begin

    s := 47;

    n := 1;

    while s > 0 do

    begin

        s := s - 9;

        n := n + 4

    end;

    writeln(n)

end.

алг

нач

цел s, n

s := 47

n := 1

нц пока s > 0

    s := s - 9

    n := n + 4

кц

вывод n

кон

Си++

#include <iostream>

using namespace std;

int main()

{

    int s, n;

    s = 47;

    n = 1;

    while (s > 0) {

        s = s – 9;

        n = n + 4;

    }

    cout << n << endl;

}

 


Ответ:

9
Задание 9 № 7754

Производилась двухканальная (стерео) звукозапись с частотой дискретизации 48 кГц и 24-битным разрешением. В результате был получен файл размером 5625 Мбайт, сжатие данных не производилось. Определите приблизительно, сколько времени (в минутах) производилась запись. В качестве ответа укажите ближайшее к времени записи целое число, кратное 5.


Ответ:

10
Задание 10 № 16886

Матвей составляет 6-буквенные коды из букв М, А, Т, В, Е, Й. Каждую букву нужно использовать ровно 1 раз, при этом код не может начинаться с буквы Й и не может содержать сочетания АЕ. Сколько различных кодов может составить Матвей?


Ответ:

11
Задание 11 № 4645

Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:

F(1) = 1

F(2) = 3

F(n) = F(n–1) * n + F(n–2) * (n – 1) , при n >2

Чему равно значение функции F(5)?

В ответе запишите только натуральное число.


Ответ:

12
Задание 12 № 16815

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

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

Для узла с IP-адресом 98.162.71.94 адрес сети равен 98.162.71.64. Чему равно наибольшее количество возможных адресов в этой сети?


Ответ:

13
Задание 13 № 5237

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

 

Определите объём памяти, отводимый этой программой для записи 25 паролей. (Ответ дайте в байтах.)


Ответ:

14
Задание 14 № 1814

Исполнитель КОРАБЛИК «живет» в ограниченном прямоугольном водоеме-лабиринте, разделенном на клетки и изображенном на рисунке (вид сверху). Серые клетки — скалистые берега, светлые — свободное пространство, безопасное для передвижения КОРАБЛИКА. По краю водоема-лабиринта также находятся скалы с нанесенными на них номерами и буквами для удобства идентификации клеток.

 

 

Система команд исполнителя КОРАБЛИК:

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

При выполнении любой из этих команд КОРАБЛИК перемещается на одну клетку соответственно (по отношению к наблюдателю): вверх ↑, вниз ↓, влево ←, вправо →. Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится КОРАБЛИК (также по отношению к наблюдателю):

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

 

Цикл

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

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

При попытке передвижения на любую серую клетку КОРАБЛИК разбивается о скалы.

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

 

НАЧАЛО

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

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

вверх

влево

КОНЕЦ


Ответ:

15
Задание 15 № 3285

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

 


Ответ:

16
Задание 16 № 5279

Запись числа N в системе счисления с основанием 6 содержит две цифры, запись этого числа в системе счисления с основанием 5 содержит три цифры, а запись в системе счисления с основанием 11 заканчивается на 1.

Чему равно N?


Ответ:

17
Задание 17 № 5284

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

 

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

 

ЗапросНайдено страниц
(в тысячах)
Леннон & Маккартни & Старр1100
Леннон & Маккартни & Харрисон1300
Леннон & Маккартни & Старр & Харрисон1000

 

 

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

(Леннон & Маккартни & Старр) | (Леннон & Маккартни & Харрисон)?

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


Ответ:

18
Задание 18 № 10481

Обозначим через m&n поразрядную конъюнкцию неотрицательных целых чисел m и n.

Так, например, 12&6 = 11002&01102 = 01002 = 4.

Для какого наибольшего целого числа А формула

 

х&А → (x&10 = 0 → х&3)

 

тождественно истинна (т. е. принимает значение 1 при любом неотрицательном целом значении переменной x)?


Ответ:

19
Задание 19 № 7764

В программе используется одномерный целочисленный массив A с индексами от 0 до 9. Значения элементов равны 5; 1; 6; 7; 8; 8; 7; 7; 6; 9 соответственно, т.е. A[0] = 5; A[1] = 1 и т.д. Определите значение переменной c после выполнения следующего фрагмента программы, записанного ниже на разных языках программирования.

 

БейсикPython

c = 0

FOR i = 1 TO 9

    IF A(i - 1) >= A(i) THEN

        t = A(i)

        A(i) = A(i - 1)

        A(i - 1) = t

    ELSE

        c = c + 1

    ENDIF

NEXT i

c = 0

for i in range(1, 10):

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

        t = A[i]

        A[i] = A[i - 1]

        A[i - 1] = t

    else:

        c = c + 1

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

c := 0;

for i := 1 to 9 do

    if A[i - 1] >= A[i] then

        begin

            t := A[i];

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

            A[i - 1] := t

        end

    else

        c := c + 1;

c := 0

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

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

    t := A[i]

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

    A[i - 1] := t

иначе

    c := c + 1

все

кц

Си++

c = 0;

for (i = 1; i <= 9; i++)

    if (A[i-1] >= A[i])

    {

        t = A[i];

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

        A[i - 1] = t;

    }

    else

        c++;

 


Ответ:

20
Задание 20 № 15115

Ниже на пяти языках программирования записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 4.

 

 

БейсикPython

DIM X, A, B AS INTEGER

INPUT X

A = 0: B = 0

WHILE X > 0

    IF X MOD 2 = 0 THEN

        A = A + 1

    ELSE

        B = B + X MOD 6

    END IF

    X = X \ 6

WEND

PRINT A

PRINT B

 

x = int(input())

a=0; b=0

while x > 0:

    if x%2 == 0:

        a += 1

    else:

        b += x%6

    x = x//6

print(a, b)

 

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

var x, a, b: longint;

begin

    readln(x);

    a := 0; b := 0;

    while x > 0 do begin

        if x mod 2 = 0 then

            a := a + 1

        else

            b := b + x mod 6;

        x := x div 6;

    end;

    writeln(a); write(b);

end.

 

алг

нач

    цел x, a, b

    ввод x

    a := 0; b := 0

    нц пока x > 0

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

            то a := a+1

            иначе b := b + mod(x,6)

        все x := div(x,6)

    кц

    вывод a, нс, b

кон

 

С++

#include <iostream>

using namespace std;

int main()

{

    int x, a, b;

    cin >> x;

    a = 0; b = 0;

    while (x > 0) {

        if (x%2 == 0) a += 1;

        else                

        b += x%6;

        x = x / 6;

    }

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

    return 0;

}

 

 


Ответ:

21
Задание 21 № 18090

Напишите в ответе число, равное количеству различных значений входной переменной k, при которых приведённая ниже программа выводит тот же ответ, что и при входном значении k = 35. Значение k = 35 также включается в подсчёт различных значений k.

 

 

БейсикPython

DIM K, I AS INTEGER

INPUT K

I = 1

WHILE F(I) < K

    I = I + 1

WEND

IF F(I)−K<=K−F(I−1) THEN

    PRINT I

ELSE

    PRINT I – 1

END IF

 

FUNCTION F(N)

    F = N*N*N

END FUNCTION

def f(n):

    return n*n*n

 

k = int(input())

i = 1

while f(i) < k:

    i = i + 1

if f(i)–k <= k–f(i−1):

    print(i)

else:

    print(i−1)

 

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

var k, i : longint;

function f(n: longint) : longint;

begin

    f := n*n*n;

end;

 

begin

    readln(k);

    i := 1;

    while f(i) < k do

        i:= i+1;

    if f(i)−k <= k−f(i−1) then

        writeln(i)

    else writeln(i−1);

end.

 

алг

нач

    цел k, i

    ввод k

    i := 1

    нц пока f(i) < k

        i := i + 1

    если f(i)−k <= k−f(i−1)

    то вывод i

    иначе вывод i−1

    все

    кц

кон

 

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

нач

        знач := n * n * n

кон

 

С++

#include <iostream>

using namespace std;

 

int F(int n){

    return n*n*n;

}

int main(){

int i, k;

    cin >> k;

    i = 1;

    while(F(i) < k) i=i+1;

    if(F(i)−k<=k−F(i−1))

        cout << i;

    else

        cout << (i − 1);

    return 0;

}

 


Ответ:

22
Задание 22 № 13368

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

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

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

2. Прибавить 5

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

Сколько существует программ, которые число 1 преобразуют в число 20?


Ответ:

23
Задание 23 № 10486

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

 

 

(x1 ∨ y1) → (x2 ∧ y2) = 0

(x2 ∨ y2) → (x3 ∧ y3) = 0

...

(x5 ∨ y5) → (x6 ∧ y6) = 0

 

 

 

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


Ответ:

24
Задание 24 № 3652

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

 

 

БейсикPython

INPUT а, b, х

IF а = 0 THEN

IF b > 0 THEN

PRINT "нет решений"

ELSE

PRINT "x>0 или x<0"

ENDIF

ELSE

PRINT -a,"< x < 0"

a = int(input())

b = int(input())

x = int(input())

if a == 0:

    if b > 0:

        print("нет решений")

    else:

        print("x > 0 или x <0")

else:

    print(-a,'< x <0')

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

var a,b,x: real;

begin

readln(a,b,x);

if a = 0 then

if b > 0 then

write ('нет решений')

else

write('x > 0 или x <0')

else

write(-a,'< x <0');

end.

алг

нач

    вещ a, b, x

    если a == 0 то

        если b > 0 то

            вывод 'нет решений'

        иначе

            вывод 'x > 0 или x <0'

        все

    иначе

        вывод -a,'< x <0'

    все

кон

Си++

#include <iostream>

using namespace std;

int main(void)

{ float a,b,x;

cin >> a >> b,&x;

if (a==0)

if (b>0)

cout << "нет решений"<< endl;

else

cout << "x>0 или x<0"<< endl;

else

cout << -a << "< x <0" << endl;

 

 

Последовательно выполните три задания:

1) Приведите пример таких чисел а, b, х, при которых программа неверно решает поставленную задачу.

2) Укажите, какая часть программы является лишней.

3) Укажите, как нужно доработать программу, чтобы не было случаев ее некорректной работы. (Это можно сделать несколькими способами, поэтому можно указать любой способ доработки исходной программы).


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

25
Задание 25 № 13609

Дан массив, содержащий 2017 положительных целых чисел, не превышающих 10000. Необходимо найти и вывести количество таких элементов этого массива, шестнадцатеричная запись которых содержит ровно два знака, причём последний из них – буква от A до F. Например, для массива из 4 элементов, содержащего числа 42, 255, 162, 266, ответ будет равен 2: в шестнадцатеричной системе эти числа записываются как 2A, FF, A2, 10A; первые два – подходят, в третьем – последняя цифра не записывается буквой, в четвертом – больше двух знаков. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из описанных.

 

 

БейсикPython

CONST N=2017

DIM A(N) AS INTEGER

DIM I, M, K AS INTEGER

FOR I = 1 TO N

    INPUT A(I)

NEXT I

END

# допускается также использо-

# вание целочисленных

# переменных m, k

a = []

N = 2017

for i in range(0, N):

    a.append(int(input()))

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

const

    N=2017;

var

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

    i, m, k: integer;

begin

    for i:=1 to N do

        readln(a[i]);

    …

end.

алг

нач

    цел N=2017

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

    цел i, m, k

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

        ввод a[i]

    кц

    …

кон

Си++

#include <iostream>

using namespace std;

#define N 2017

int main(){

    int a[N];

    int i, m, k;

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

        cin >> a[i];

    …

    return 0;

}

 

 

 

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


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

26
Задание 26 № 10489

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

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

Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока — значит описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника. Например, при начальных позициях (21, 30) и (41, 20) выигрышная стратегия есть у Пети. Чтобы выиграть, ему достаточно удвоить количество камней во второй куче.

Задание 1

Для каждой из начальных позиций (10, 35), (6, 37) укажите, кто из игроков имеет выигрышную стратегию. В каждом случае опишите выигрышную стратегию; объясните, почему эта стратегия ведёт к выигрышу, и укажите, какое наибольшее количество ходов может потребоваться победителю для выигрыша при этой стратегии.

Задание 2

Для каждой из начальных позиций (10, 34), (5, 37), (6, 36) укажите, кто из игроков имеет выигрышную стратегию. В каждом случае опишите выигрышную стратегию; объясните, почему эта стратегия ведёт к выигрышу, и укажите, какое наибольшее количество ходов может потребоваться победителю для выигрыша при этой стратегии.

Задание 3

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


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

27
Задание 27 № 16054

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

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

В первой строке входных данных задаётся количество чисел N (4 ≤ N ≤ 1000). В каждой из последующих N строк записано одно целое положительное число, не превышающее 10 000.

В качестве результата программа должна вывести одно число: количество пар элементов, находящихся в последовательности на расстоянии не меньше чем 4, в которых произведение элементов кратно 29.

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

7

58

2

3

5

4

1

29

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

5

Пояснение. Из 7 заданных элементов с учётом допустимых расстояний между ними можно составить 6 произведений: 58 · 4, 58 · 1, 58 · 29, 2 · 1, 2 · 29, 3 · 29. Из них на 29 делятся 5 произведений.

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

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

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

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

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

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

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

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


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