def findMinimumSteps(tc):
fib, cnt = [1, 1], [0] * len(tc)
for i, k in sorted(enumerate(tc), key=operator.itemgetter(1)):
while (num := fib[-1] + fib[-2]) <= k:
fib.append(num)
hi = len(fib)
while k:
hi = bisect.bisect(fib, k, hi=hi) - 1
k -= fib[hi]
cnt[i] += 1
return cnt