题目表述:
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
给定数列 1,1,1,3,5,9,17,⋯,从第 4 项开始,每项都是前 3 项的和。
求第 20190324 项的最后 4位数字。
思路:
要求最后四位数字的话,因为数字相加,只需要保留最后四个数字即可,前面的万位及以上不需要拿过来计算。因为是2千万项,long long肯定会越界,所以每次计算的时候要取余。
代码:
#include<iostream>
using namespace std;
int a[20190324] = { 1,1,1,3 };
int main()
{
for (int i = 4; i < 20190324; i++)
{
a[i] = (a[i - 1] + a[i - 2] + a[i - 3]) % 10000;
}
cout << a[20190323];
return 0;
}
答案:
4659