это должно дать мне сумму 24
На самом деле 25, но в любом случае я думаю, что получил N log N решение:
array_k = [11, 11, 13, 11, 12, 15]
array_l = [7, 5, 10, 9, 5, 9, 11]
new_k = [(pos, val, True) for pos, val in enumerate(array_k)]
new_l = [(pos, val, False) for pos, val in enumerate(array_l)]
r = new_k + new_l
r.sort(key=lambda el: el[1], reverse=True)
first_pos = r[0][0]
first_val = r[0][1]
first_type = r[0][2]
for i in range(1, len(r)):
pos, value, type_ = r[i]
if type_ is not first_type and abs(pos - first_pos) >= 3:
print("MAX = ", first_val + value)
break
Дайте мне знать, если вам нужны дальнейшие объяснения.