[백준] 10870번: 피보나치 수

https://www.acmicpc.net/problem/10870

설명

재귀로 해결

무한 반복에 빠지지 않으려면 재귀를 중지하는 조건을 설정해야 합니다.

0과 1에서는 더 이상 재귀할 필요가 없으므로 값을 반환하고 재귀를 중지합니다.

재귀 함수의 깊이가 너무 깊어지면 Python이 스스로 감지하여 강제로 중지합니다.

재귀 함수의 최대 깊이를 조정하려면 sys.setrecursionlimit(최대 깊이 값)를 설정해야 합니다.

이 문제에 대해 별도로 설정할 필요가 없습니다.

n = int(input())

def f(n):
    if n== 0:
        return 0
    elif n == 1:
        return 1
    elif n==2:
        return 1
    return f(n-1) + f(n-2)

print(f(n))