-
[BOJ] 1003 : 피보나치 함수STUDYING/Algorithm 2018. 11. 20. 16:30728x90
문제
해결
다이내믹 프로그래밍인줄 모르고 계속 시간초과떴다..
결국 메모이제이션!!!!!!!!!!!!!!을 하니까 맞았습니다><
코드
#include <stdio.h>
int mem[41];
int fibonacci(int n) {
if (mem[n] > 0)
return mem[n];
if (n == 0)
return 0;
if (n == 1 || n == 2)
return 1;
return mem[n] = fibonacci(n - 2) + fibonacci(n - 1);
}
int main() {
int testcase, N;
scanf("%d", &testcase);
for (int i = 0; i < testcase; ++i) {
scanf("%d", &N);
if (N == 0)
printf("1 0\n");
else
printf("%d %d\n", fibonacci(N - 1), fibonacci(N));
}
return 0;
}'STUDYING > Algorithm' 카테고리의 다른 글
[BOJ] 2965 : 캥거루 세마리 (0) 2018.11.22 [BOJ] 11726 11727 : 2xn 타일링/ 2xn 타일링 2 (0) 2018.11.20 [BOJ] 2747 : 피보나치 수 (0) 2018.11.20 [BOJ] 9095 : 1,2,3 더하기 (0) 2018.11.20 [BOJ] 7568 : 덩치 (0) 2018.11.16