Дана последовательность натуральных чисел. Необходимо выбрать из последовательности три числа так, чтобы их сумма делилась на 105 и при этом была максимально возможной.
Первая строка входного файла содержит целое число N — общее количество чисел в наборе. Каждая из следующих N строк содержит одно натуральное число, не превышающее 108.
Вам даны два входных файла (A и B), каждый из которых имеет описанную выше структуру. В ответе укажите два числа: сначала требуемую сумму для файла A, затем — для файла B.
Ответ:
Решение. Приведем решение на языке Python для файла A.
f = open('27-A2.txt')
n = int(f.readline())
a = [int(s) for s in f]
summi = []
for i in range(n):
for j in range(i+1, n):
for k in range(j+1,n):
summa = a[i] + a[j] + a[k]
if summa % 105 == 0:
summi.append(summa)
print(max(summi))
Приведем решение на языке Python для файлов А и B.
f = open('27.txt')
n = int(f.readline())
a = [int(s) for s in f]
ost105 = [[-100000,-100000,-100000] for i in range(105)]