Подается массив из n натуральных чисел. Известно, что не в каждой i клетке присутствует число, дающее остаток i от деления на n, а там записано мусорное число: -10000000. В конце файла подается число k. Надо прибавить ко всем числам число k и при этом сохранить начальное условие (переписать это всё в новый массив). В качестве ответа укажите сумму индексов положительных элементов массива.
f = open(’File_4.txt’)
n = int(f.readline())
ans = []
for i in range(n):
ans.append(int(f.readline()))
num = int(f.readline())
ans_new = [-10000000] * len(ans)
for j in range(len(ans)):
ost = (ans[j] + num) % len(ans)
if ans[j] + num > ans_new[ost]:
ans_new[ost] = ans[j] + num
ans = ans_new
print(ans)
print(sum([i for i in range(len(ans)) if ans[i] > 0]))
n = int(f.readline())
ans = []
for i in range(n):
ans.append(int(f.readline()))
num = int(f.readline())
ans_new = [-10000000] * len(ans)
for j in range(len(ans)):
ost = (ans[j] + num) % len(ans)
if ans[j] + num > ans_new[ost]:
ans_new[ost] = ans[j] + num
ans = ans_new
print(ans)
print(sum([i for i in range(len(ans)) if ans[i] > 0]))
Ответ: 127