Подается массив из натуральных чисел, а также два натуральных числа —
и
. Известно, что не в каждой
клетке присутствует число, дающее остаток
от деления на
, а там записано мусорное число:
. Прибавьте к массиву число
, а затем число
и определите, какие максимальные суммы с остатком
могут получиться. (постройте итоговый массив, чтобы в
-ой клетке лежало максимально по возможности число (выбор между двумя массивами когда прибавляли
или
)) В качестве ответа выведите массив на экран (скобки и пробелы сохраняйте).
Напишите ответ для массива и для
и
.
ans_12 = [72, 73, -10000000, 75, 76, -10000000, 78, 79, 80, 81, 82, 83]
x = int(input())
y = int(input())
ans_new_12 = [-10000000] * 12
for j in range(12):
ost = (ans_12[j] + x) % 12
if ans_12[j] + x > ans_new_12[ost]:
ans_new_12[ost] = ans_12[j] + x
for j in range(12):
ost = (ans_12[j] + y) % 12
if ans_12[j] + y > ans_new_12[ost]:
ans_new_12[ost] = ans_12[j] + y
ans_12 = ans_new_12
print(ans_12)
x = int(input())
y = int(input())
ans_new_12 = [-10000000] * 12
for j in range(12):
ost = (ans_12[j] + x) % 12
if ans_12[j] + x > ans_new_12[ost]:
ans_new_12[ost] = ans_12[j] + x
for j in range(12):
ost = (ans_12[j] + y) % 12
if ans_12[j] + y > ans_new_12[ost]:
ans_new_12[ost] = ans_12[j] + y
ans_12 = ans_new_12
print(ans_12)
Ответ: [84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95]