当前位置: 首页 > article >正文

蓝桥杯数列求值(2019试题C)

【问题描述】

          给定数列1,1,1,3,5,7,17……从第4项开始,每项都是前3项的和。求第20190324项的最后4位数字。

【答案提交】

        这是一道结果填空题,考生只需要计算出结果并提交即可。本题的结果为一个4位整数(提示:答案的千位不为0),在提交答案时只填写这个整数,填写多余内容将无法得分。

【参考答案】

     4659

    【题目解析】

     该数列公式很容易让人想起斐波那契数列的递推法进行计算,递推公式为:

                a[i] = a[i-1] + a[i-2] +a[i-3] 

     但要注意一个问题,那就是由于a[i]到后面会变得过大,从而超过long long所表示的范围,所以数组中只保留计算结果的后4位,这就需要在每次存放数据之前就对数据进行取余运算,只保留数据的后4位。

【参考程序如下】

#include <iostream>
using namespace std;
int dp[20190324]; 
int main(int argc, char** argv) {
	int i;
	dp[0] = dp[1] = dp[2] = 1;
	for(i = 3; i < 20190324;i++)
	 dp[i] = (dp[i - 1] + dp[i - 2] + dp[i - 3]) % 10000;
	 cout << dp[i - 1];
	return 0;
}

【运行结果如下】


http://www.kler.cn/a/441883.html

相关文章:

  • three.js实现裸眼双目平行立体视觉
  • AI发展困境:技术路径与实践约束的博弈
  • 【QT】 控件 -- 按钮类(Button)
  • Chrome 132 版本新特性
  • 前沿技术趋势洞察与分析:探寻科技变革的多维密码
  • 1.写在前面
  • 【系统】Windows11更新解决办法,一键暂停
  • 安卓课设版算法计算器
  • 用.Net Core框架创建一个Web API接口服务器
  • lambda 表达式 闭包写法
  • 模具生产过程中的标签使用流程图
  • 前端的Python入门指南(完):错误和异常处理策略及最佳实践
  • YOLOv9-0.1部分代码阅读笔记-activations.py
  • 亚远景-实施ASPICE标准:全面提升汽车软件开发质量与效率的策略
  • leetcode二叉搜索树部分笔记
  • MySQL 中 Varchar(50) 和 varchar(500) 区别是什么?
  • 概率论深入学习书单
  • Halcon 直连相机
  • Excel加载项入门:原理、安装卸载流程与常见问题
  • CSS Grid 布局:属性及使用详解
  • qemu源码解析【总目录】
  • C/C++ 查找算法
  • 入探讨网络安全:技术与策略的双重防线深
  • 创建线程 ---- 实例
  • 每天40分玩转Django:Django缓存系统
  • 探索:为什么数组数据后端确要求前端传递,拼接的字符呢