320x100
#include<cstdio>
#include<cmath>
int n;
int dp_zero[41]={1,0,1,};
int dp_one[41]={0,1,1,};
int main() {
int N,T;
scanf("%d",&T);
for(int i=3;i<=40;i++)
{
dp_zero[i]=dp_zero[i-1]+dp_zero[i-2];
dp_one[i]=dp_one[i-1]+dp_one[i-2];
}
while(T--)
{
int n;
scanf("%d",&n);
printf("%d %d\n",dp_zero[n], dp_one[n]);
}
return 0;
}
힌트
피보나치가 애초에 fibo[i-1] 와 fibo[i-2]를 더하는 것입니다.
그렇다면 호출 횟수를 구하는 것도 fibo_cnt[i-1]+ fibo_cnt[i-2]로 하면 되지 않을까요?
반응형
'알고리즘문제' 카테고리의 다른 글
[백준]boj 1009 분산처리 (distributed processing) (0) | 2018.08.07 |
---|---|
[백준] boj 1008 A/B (division) (0) | 2018.08.07 |
코드그라운드 50번 문제 스타벅스 (0) | 2017.09.28 |
코드그라운드 49번 문제 안녕 (0) | 2017.09.26 |
코드그라운드 12번 문제 방속의 거울 (0) | 2017.09.25 |
댓글