2020牛客寒假算法基础集训营4 -- A : 欧几里得

A:欧几里得

考察点 : 递推, gcd
坑点  :  long long

这道题题解说的十分详细,是裴波那契的一种变形,只不过换成 gcd 了。

Code:

#include <cstdio>
#include <string>
#include <cstring>
#include <iostream>
#include <algorithm>

using namespace std;

typedef long long LL;
const int maxn = 100;

LL dp[maxn];
int T,n;
int res = 0;

int main(void) {
	dp[0] = 1,dp[1] = 1;
	for(int i = 2; i <= 90; i ++) {
		dp[i] = dp[i - 1] + dp[i - 2];
	}
	scanf("%d",&T);
	while(T --) {
		scanf("%d",&n);
		if(n == 0) cout << 1 << endl;
		else cout << dp[n + 1] + dp[n] << endl;
	}
	return 0;
} 
posted @ 2020-02-13 10:04  IceSwords  阅读(92)  评论(0编辑  收藏  举报