РУҚА
27

Жауабы: Пары чисел, кратные 19

ЕГЭ · Информатика · Тапсырма 27 · Алгоритмдер және орындаушылар
ЖоғарыФИПИ37B022Толық шешім≈ 15 минут
Ненің шығуы керек

Алгоритм работает за $O(N)$ времени и использует $O(1)$ дополнительной памяти.

У этого задания официального ключа нет, поэтому ответ получен в разборе және кілтпен салыстырылмаған. Нәтижені жаттамас бұрын, өтіңіз выкладки — там видно, откуда взялось каждое число.

Условие

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

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

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

Пример входных данных:
7
38
2
3
5
4
1
19

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

Из семи заданных элементов с учётом допустимых расстояний между ними можно составить 6 произведений: $38 \cdot 4$, $38 \cdot 1$, $38 \cdot 19$, $2 \cdot 1$, $2 \cdot 19$, $3 \cdot 19$. Из них на 19 делятся 5 произведений.

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

Тапсырманы ашып, өзіңіз шешіңіз

Где здесь ошибаются

Учитывать пары с расстоянием 1, 2 или 3.

Считать все пары двойным циклом, получая сложность $O(N^2)$.

Хранить всю последовательность, нарушая требование постоянного объёма памяти.

Проверять только остаток текущего числа и забывать о ранее встреченных числах, кратных 19.

Неправильно обновлять задержку и добавлять в счётчик число, которое находится на расстоянии менее 4 позиций.

Откуда взялся этот ответТалдау бөлінген 7 қадам: видно каждое преобразование и где теряется балл.
Шешімді ашу

Тапсырмаға жауап 27 ЕГЭ, информатика

Официального ключа у этого задания нет, и ответ здесь получен в разборе. Сондықтан жанында есептеулер бар: олардан жауаптың неге негізделгені көрінеді, және тек қана нәтижемен емес, шешім барысын да салыстыруға болады.

Задача из темы «Алгоритмдер және орындаушылар»: в ней 432 задачи — әрқайсысының жауабы мен қадамдық талдауы бар. Тіркелу қажет емес.