i'm giving a list in the function which takes the numbers and adds as more as possible in order return the higher sum possible which is smaller or even to the limit
maxsum=0
def maxDistance(lista,limit):
global maxsum
lista.sort(reverse=True)
for i in range(len(lista)):
global mega
mega[i]=0
for i in range(len(lista)):
if lista[i]<=limit:
for j in range(len(lista)):
if i!=j:
mega[i]=mega[i]+lista[j]
if mega[i]>limit:
mega[i]=mega[i]-lista[j]
maxsum=max(mega)
return maxsum
print ("Εισαγετε μια λιστα απο αποστασεις και υστερα αφου την καταχωρησετε ,καταχωρηστε εναν αριθμο ως οριο αθροισματος των προηγουμενων αποστασεων. Χωριστε τους αριθμους με κενα. ","\n")
lista=[float(x) for x in input("dose lista: ").split()]
limit=float(input("dose orio: "))
maxDistance(lista,limit)
print (maxsum)
input("press enter to continue")