سلام دوست عزیز
والا توابع بازگشتی اصلا ایده ی خوبی برای برنامه نویسی توی پروژه های بزرگ نیستش
به خصوص این که بخوای اونو توی پایتون که به خودی خود کند هست پیاده سازیش کنی
این رو خود توسعه دهندگان پایتون هم دونستن برای همین یک سقف تعیین کردن که اگر مصرف برنامه ی شما بالاتر از اون رفت ناخداگاه برنامه break بشه تا از overfolw جلوگیری بکنه
توصیه ی من به شما اینه که بدون توابع بازگشتی و با استفاده از for برنامه تون رو بنویسین
یا اگر خیلی مصر هستین به اجرای توابع بازگشتی از زبان سی استفاده کنین
ولی اگر خیلی خیلی مصر هستین (که من واقعا دلیلی برای این حد از اصرار نمی بینم) که تو پایتون بخواین این برنامه رو بنویسین شما باید محدودیت توابع بازگشتی رو از طریق sys.setrecursionlimit تغییر بدین که من به هیچ عنوان اون رو توصیه نمی کنم