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

【问题描述】

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

【答案提交】

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

【参考答案】

4659

【题目解析】

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

ai = ai-1 + ai-2 +ai-3

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

【参考程序如下】

cpp 复制代码
#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;
}

【运行结果如下】

相关推荐
PhotonixBay4 分钟前
共聚焦成像核心原理:针孔、PSF与三维形貌测量技术
人工智能·测试工具·算法
来一碗刘肉面38 分钟前
C++中的引用语法
c++·算法
捷瑞电子工坊41 分钟前
C语言条件操作符(? :)——三分钟上手
c语言·条件操作符·编程基础·三目运算符
A.零点1 小时前
期末复习,408考研数据结构:第一章绪论完整知识梳理与真题深度解读
c语言·数据结构·笔记·考研
Black蜡笔小新1 小时前
自动化AI算法训练服务器DLTM零代码私有化赋能智慧农业用AI智能视觉守护万亩良田
人工智能·算法·自动化
Tisfy1 小时前
LeetCode 1288.删除被覆盖区间:排序(非二重循环暴力)
算法·leetcode·题解·排序
Σίσυφος19002 小时前
激光三角 光平面标定之后计算深度图
算法·平面
阿文的代码库2 小时前
经典算法题剖析:按奇偶排序数组
数据结构·算法
AI小码2 小时前
WAIC 2026前瞻:AI产业进入拼落地的下半场
人工智能·算法·ai·程序员·大模型·编程·智能体
珠海西格电力3 小时前
零碳园区数据应用的具体场景有哪些?
大数据·人工智能·算法·架构·能源