DP斐波那契数列
先写出暴力算法
int ff(int n) { if (n >2) { return ff(n - 1) + ff(n - 2); } else { return 1; } }
然后根据递归,转换为DP,自底向上根据递归式递推出下一个状态
因为n<=2都是1 所以该范围下的状态都是1,
int *arr = new int[ 60]; memset(arr, 0, (sizeof (int))*(60)); arr[0] = 1; arr[1] = 1; arr[2] = 1; for (int i = 3; i <= 10; i++) { arr[i] = arr[i - 1] + arr[i - 2]; } cout << arr[10];