Используя подход, описанный выше, вы будете снова и снова пересчитывать одни и те же числа. map
, который вы упомянули в комментариях, - это метод, называемый memoization , в этом методе вы кэшируете свои результаты и т. Д. Для каждого номера перед рекурсивным вызовом с coin(x)
вы сначала проверяете, уже в таблице напоминаний, и если это так, вы можете сразу же вернуть результат, не пересчитывая его снова и снова.
Удачи!