[蓝桥杯2019初赛]数列求值

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

代码如下:

#include <iostream>
using namespace std;
const int N = 20190334;
int a[N];

int main() {
    
    
	a[1] = 1;
	a[2] = 1;
	a[3] = 1;
	for (int i = 4; i <= 20190324; i++) {
    
    
		a[i] = (a[i - 1] + a[i - 2] + a[i - 3]) % 10000;//不这样处理,很快就会溢出
	}
	cout << a[20190324] << endl;
	return 0;
}

猜你喜欢

转载自blog.csdn.net/m0_51955470/article/details/114241398