Да, это эффективный код: ведь мы не знаем, зачем он, и не можем утверждать обратного.
UPDATE
from itertools import combinations
print(*max(filter(lambda p: p[0] > p[1] and not sum(p) % 120,
combinations([int(input()) for _ in range(int(input()))], 2)), key=sum))
Для больших массивов чисел (12000 - это уже много) более эффективно такое решение:
l, best = [-1] * 120, -1
for _ in range(int(input())):
x = int(input())
y = l[-x % 120]
if x < y > best - x:
yx, best = (y, x), y + x
l[x % 120] = max(l[x % 120], x)
print(*yx)