All pastes #615838 Raw Edit

Someone

public text v1 · immutable
·published 2007-07-12 09:53 UTC
rendered paste body
lists = [[1,4,6,7,8],[2,3,3,5,5],[4,4,4,6,9]] # a list of N lists
indexes = [-1 for i in xrange(len(lists))] # for position keeping
maxes = [lists[i][indexes[i]] for i in xrange(len(lists))] # initialize big\
gest values
maxvalue = max(maxes) # find biggest
M = 3 # how many biggest values you need
result = []

for n in xrange(M):
    pos = maxes.index(maxvalue) # find position of biggest value
    result.append(maxvalue) # add biggest to result
    indexes[pos] = indexes[pos] - 1 # move to next in list that had biggest
    maxes[pos] = lists[pos][indexes[pos]] # update the added value
    maxvalue = max(maxes) # find new biggest

print result