首页 > 试题广场 >

斐波那契数列问题的递归和动态规划3

[编程题]斐波那契数列问题的递归和动态规划3
  • 热度指数:5064 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
假设农场中成熟的母牛每年只会生 1 头小母牛,并且永远不会死。第一年农场中有一只成熟的母牛,从第二年开始,母牛开始生小母牛。每只小母牛 3 年之后成熟又可以生小母牛。给定整数 n,求出 n 年后牛的数量。

输入描述:
输入一个整数 n。


输出描述:
输出 n 年后牛的数量对 1e9 + 7 取模的值。
示例1

输入

6

输出

9

备注:
头像 WYJ96
发表于 2021-07-28 03:53:42
package com.wyj.ch4; /** * @author: wyj * @describe: * @version:V01 * @date: 2021/7/28- 3:36 */ public class h4a1b { /* f(1)=1 f(2)=2 展开全文
头像 程勇201921010625
发表于 2022-06-20 22:51:39
递推式f[n] = f[n - 1] + f[n -3],即第n年的牛个数等于上一年的牛个数+三年前的牛个数(三年前的牛到今年每个都会生一个仔) 一切线性递推式都可以表示为Y=AX的形式,然后就可以使用矩阵快速幂求解 #include <iostream> #include <v 展开全文
头像 uzzzz~
发表于 2022-03-14 17:46:47
根据年份改为3x3的矩阵递推。 #include <iostream> #include <vector> using namespace std; const long long MOD=1000000007; vector<vector<long long&g 展开全文