1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
def GetNumMinMax (arrGiven, bIsMax = True):
return sorted(arrGiven, reverse = bIsMax)[0]
def GetLastElem (arrInput):
if len(arrInput) == 2:
return GetNumMinMax(arrInput, False)
return GetLastElem ([GetNumMinMax(arrInput[nLoop * 2: (nLoop + 1) * 2], nLoop % 2 == 1) for nLoop in range(0, int(len(arrInput) / 2))])
## arrInts = [2, 1, 4, 5, 6, 3, 0, 2] ## Example 1
## arrInts = [0, 5, 3, 2] ## Example 2
arrInts = [9, 2, 1, 4, 5, 6, 0, 7, 3, 1, 3, 5, 7, 9, 0, 8] ## Example 3
print (GetLastElem (arrInts))
|