import numpy as np file = "inputs/day6.input" numbers = [int(x) for x in open(file, "rb").read().decode().split(",")] unique, counts = np.unique(numbers, return_counts=True) fishies = [counts[unique == x][0] if (x in unique) else 0 for x in range(9)] days = 256 for day in range(days): labour_fishies = fishies[0] for idx in range(len(fishies) - 1): fishies[idx] = fishies[idx + 1] fishies[6] += labour_fishies fishies[8] = labour_fishies print(sum(fishies))