프로그래밍/Python

백준_python 1003번 피보나치 함수(다이나믹프로그래밍)

O'bin 2024. 4. 22. 14:15

<문제 링크>

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

 

1003번: 피보나치 함수

각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다.

www.acmicpc.net

 

 

 

<정답 코드>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
def fibonacci(n) :
    zeros = [101]  
    ones = [011]
    if n >= 3:
        for i in range(2,n):
            zeros.append(zeros[i-1+ zeros[i])
            ones.append(ones[i-1+ ones[i])
    print(zeros[n], ones[n])
 
= int(input())
 
for _ in range(t):
    n = int(input())
    fibonacci(n)
cs

 

 

재귀로 접근하면 시간초과 또는 메모리 초과 발생