Задача к ЕГЭ по информатике на тему «Макс/мин, кол-во пар, произведение кратно/не кратно» №3

На вход программы поступает последовательность из N целых положительных чисел, необходимо определить количество пар двух элементов последовательности с различными номерами, произведение которых даёт число кратное 22.

Входные данные: Дан входной файл, который содержит в первой строке количество чисел N (1 ≤ N ≤ 100000). В каждой из последующих N строк записано одно натуральное число, не превышающее 1000.

В ответе укажите два числа через пробел: сначала значение для файла А, затем для файла B.

Для А

s = open(’27-14a.txt’, ’r’).readlines()[1:]
arr = []
for i in range(len(s)):
    arr.append(int(s[i]))
n = len(arr)
cnt = 0
for i in range(n - 1):
    for j in range(i + 1, n):
        if (arr[i]*arr[j]) % 22 == 0:
            cnt += 1
print(cnt)

Для Б

s = open(’27-14b.txt’, ’r’).readlines()[1:]
arr = []
for i in range(len(s)):
    arr.append(int(s[i]))
n = len(arr)
n22, n11, n2 = 0, 0, 0
for i in range(n):
    a = arr[i]
    if a % 22 == 0:
        n22 += 1
    elif a % 11 == 0:
        n11 += 1
    elif a % 2 == 0:
        n2 += 1
k22 = n22 * (n22 - 1) // 2 + n22 * (n - n22) + n2 * n11
print(k22)

Ответ: 5682 658250095
Оцените статью
Я решу все!