Listeler arası koşul

Merhabalar, elimde şu şekilde bir listem var:

ToplamDurakSureleri = [
[[1, 2], 9],
[[1, 2], 9],
[[1, 2, 3], 11],
[[1, 2, 5, 4], 19],
[[1, 2, 5], 15],
[[1, 2, 3, 6], 14],
[[1, 2, 5, 4, 6], 23],
[[1, 2, 3, 6, 8], 16],
[[1, 2, 5, 4, 6, 8], 25],
[[1, 2, 3, 6, 8, 10], 24],
[[1, 2, 5, 4, 6, 8, 10], 33],
[[1, 2, 3, 6, 8, 10, 11], 29],
[[1, 2, 3, 6, 8, 10, 11, 12], 39],
[[1, 2, 5, 4, 6, 8, 10, 14, 13], 43],
[[1, 2, 5, 4, 6, 8, 10, 14], 41],
[[2, 3, 6], 6],
[[2, 5, 4, 6], 15],
[[2, 3, 6], 7],
[[2, 3, 6, 15, 7], 10],
[[2, 3, 6, 8], 8],
[[2, 5, 4, 6, 8], 17]]

Yapmak istediğim ise şu. Örneğin başı 1 sonu 8 olan 2 tane iç listem var bunların birincisine karşılık gelen 16 diğeri ise 25. Benim bu ikisni karşılaştırmam gerek. Eğer 25 küçükse 16+(16/2) den bana çıktı olarak 25 ve 16 yı vermeli. Ama burada 25<24 olduğu için bana sadece 16 sonucunu vermeli. Bazen de bu karşılaştırma [[2, 3, 6], 6]
[[2, 5, 4, 6], 15],
[[2, 3, 6], 7], buradaki gibi 3 tanesi arasında olacak. Şu şekilde yazmaya çalıştım. Ama burada 3 tane olduğundaki karşılaştırmayı yapamadım. Birde şu koşulu yazamadım.

Blok-alıntı
Eğer 25 küçükse 16+(16/2) den bana çıktı olarak 25 ve 16 yı vermeli.

for row in range(len(ToplamDurakSureleri)):
    for column in range(row+1,len(ToplamDurakSureleri)):
        if(ToplamDurakSureleri[row][0][0] == ToplamDurakSureleri[column][0][0] and 
        ToplamDurakSureleri[row][0][-1] == ToplamDurakSureleri[column][0][-1]):
  1. 16+(16/2) nereden geldi?
  2. 25 < 24 degil
  3. Bazen bu karsilastirma 3 tanesi arasinda oldugunda cikti ne olacak?

Bir suredir bu liste yapisiyla ilgili bir takim islemler yapmaya calistigini gozlemliyorum. Yapinin degistirilebilecegini hic dusundun mu?

Mesela satir olarak array yerine bir obje veya hic olmadi dictionary kullanabilirsin. Hic bir sey olmasa soru sorarken key isimlerini verebilirsin.