import sys
sys.setrecursionlimit(10000) # 또는 10 ** 6
알고리즘 문제를 풀 때 재귀를 이용해서 푸는 경우가 많다. 특히 그래프 탐색에서 dfs는 재귀를 자주 사용한다. 이때 위 코드를 통해서 재귀함수 제한을 반드시 크게 잡아야한다.
파이썬의 기본 재귀 깊이 제한은 1000으로 굉장히 적다. 이는 sys 모듈의 getrecursionlimit()함수를 통해서 확인할 수 있다.
print(sys.getrecursionlimit())
따라서 파이썬으로 재귀를 이용해서 문제를 풀 경우 recursion error를 자주 볼 수 있다.
그러므로 파이썬으로 알고리즘 문제를 풀 때 재귀를 사용한다면 반드시 sys.setrecursionlimit() 함수를 통해서 재귀 깊이를 크게 잡아야한다.