Ну как варянт..
mas = [ [-2, 3, 3, 0, -3],
[15, 0, -2, 10, 10],
[0, 25, 12, -5, -7] ]
max_elem = max([x for b in mas for x in b]) #При помощи такого интересного генератора, я получаю весь массив, как обычный список
for m in range(len(mas)):
if max_elem in mas[m]: #Проверка, есть ли максимальный элемент в списке
max_elem_index = mas[m].index(max_elem) #Когда есть, то получаю его индекс.
print([b[max_elem_index:] for b in mas[:m+1]])#А этот генератор уже делает результат. mas[:m+1] - это срез, общего массива, а m+1, для того, что в этот список так же включало и текущий список, если же не нужно - то можно убрать. b[max_elem_index:] - для каждого из тех полученных списков, что находятся выше, срезом по индексу, получаю нужные элементы
break