0
点赞
收藏
分享

微信扫一扫

蓝桥杯2019年第十届省赛真题-Fibonacci 数列与黄金分割

天天天蓝loveyou 2022-04-06 阅读 67

题目

题目链接

题解

我未曾设想的道路。我居然以为是高精度的矩阵快速幂,差点心态崩了,直接看了题解……


1 ~ 50 打个表,发现到20,小数点后八位就不变了,所以……,解决。
请添加图片描述

代码

#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N = 30;
int main()
{
	LL n, f[N];
	cin >> n;
	f[1] = f[2] = 1;
	for (int i = 3;i <= min (20LL, n+1);i ++) f[i] = f[i - 1] + f[i - 2];
	if (n >= 20) printf ("0.61803399");
	else printf ("%.8lf\n", 1.0 * f[n] / f[n+1]);

	return 0;
}
举报

相关推荐

0 条评论