题解 | #贪吃牛#
贪吃牛
https://www.nowcoder.com/practice/ae6261c872724fda8913b0377e85f6ab
考察动态规划,斐波那契数列的题目。需要找到转移方程式,根据题意即为当前状态由前一步和前两步的状态决定,即s[i] = s[i-1]+s[i-2]。确定好初始状态s[1] = 1和s[2] = 2之后不断调用计算出来即可。
完整Java代码如下所示
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int整型 * @return int整型 */ public int eatGrass (int n) { // write code here int s[] = new int[30]; s[1] = 1; s[2] = 2; if(n<=2) return n; for(int i=3; i<=n; i++){ s[i] = s[i-1]+s[i-2]; } return s[n]; } }