피보나치 //피보나치 수열 중복연산O //처음 두값은 1 그다음엔 앞의 두항을 더하여 만든다. //n번째 값을 출력한다. long long fibo(int n) { if(n==1 || n ==2) return 1; else return fibo(n-1) + fibo(n-2); } //메모제이션을 통한 중복연산X long long fibo2(int n) { static long long memo[200]; if(memo[n]>0) return memo[n]; if(n==1 || n==2) return memo[n] = 1; else return memo[n] = fibo2(n-1)+fibo2(n-2); }
0 개의 댓글:
댓글 쓰기