n, m = 3, 3
bounty = [4, 2, 1]
coins = 0
# Игра установлена
queue = [(0, 0, 0)]
while queue:
score, k, day = queue.pop(0)
# Дни перед турниром
day += 1
if day > m:
# Наступил день турнира
coins = max(coins, score)
else:
# Еще есть время собирать монеты
# Пропустим этот день
queue.append((score, 0, day))
k += 1
# А лучше соберем награду
score += bounty[(k - 1) % n]
queue.append((score, k, day))
print(coins) # 8