题目描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
给定数列 1, 1, 1, 3, 5, 9, 17, ⋯,从第 4 项开始,每项都是前 3 项的和。
求第 20190324 项的最后 4 位数字。
运行限制
最大运行时间:1s
最大运行内存: 128M
解题
类似于斐波那契数列
题目只要第20190324 项的后4位数字,所以 只要运算的过程中取余只保留后4位数字即可。
代码:
#include<iostream>
using namespace std;
int a[20190325];
int main()
{
ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
a[1] = a[2] = a[3] = 1;
for(int i=4;i<20190325;i++){
a[i] += a[i-3] % 10000;
a[i] += a[i-2] % 10000;
a[i] += a[i-1] % 10000;
}
cout<<a[20190324] % 10000<<endl;
return 0;
}
结果
4659