# Fibonacci time function
def fib_time(hours, minutes):
vals = [1, 1, 2, 3, 5]
state = [0, 0, 0, 0, 0]
# Calculate Fibonacci representation for hours
remaining_hours = hours
idx = len(vals) - 1
for v in vals[::-1]:
if remaining_hours == 0 or idx < 0: break
if remaining_hours >= v:
state[idx] += 1
remaining_hours -= v
idx -= 1
# Calculate Fibonacci representation for minutes (in increments of 5)
remaining_minutes = math.floor(minutes / 5)
idx = len(vals) - 1
for v in vals[::-1]:
if remaining_minutes == 0 or idx < 0: break
if remaining_minutes >= v:
state[idx] += 2
remaining_minutes -= v
idx -= 1
return state