Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from math import log2
- from functools import cmp_to_key
- from random import randint
- def computeTower(prev, towerList):
- if prev <= 0:
- return []
- elif towerList == []:
- current = log2(prev)
- return [current]+computeTower(current, [])
- else:
- current = towerList[0]*log2(prev)
- return [current]+computeTower(current, towerList[1:])
- def compareTowers(tower1, tower2):
- tower1 = computeTower(2,tower1[1])
- tower2 = computeTower(2,tower2[1])
- size1 = len(tower1)
- size2 = len(tower2)
- if size1 < size2:
- return -1
- elif size2 < size1:
- return 1
- else:
- if tower1[-1]<tower2[-1]:
- return -1
- elif tower1[-1]>tower2[-1]:
- print("Here")
- return 1
- else:
- return 0
- numTowers = int(input())
- towers = []
- for i in range(numTowers):
- towers.append(input())
- builtTowers = []
- for t in towers:
- arr = [int(i) for i in t.split("^")]
- builtTowers.append((t,arr))
- print(builtTowers)
- sorted(builtTowers, key=cmp_to_key(lambda x,y : randint(-1,1)))
- print(builtTowers)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement