[蓝桥杯2019初赛] - Fibonacci数列与黄金分割 - 找规律
题意:中文题,自行理解。
题目链接:http://oj.ecustacm.cn/problem.php?id=1478
之后查了发现:
相邻两个斐波那契数的比值是随着序号的增加逐渐趋于黄金分割比。即f(n)/f(n+1)-→0.618…。
原来这是一个规律,我之前复习斐波那契怎么没复习到!!!
PS:这题我没有思路,查了发现就是个裸的直接输出看结果题目,可是我做的时候是真的不知道从何入手。
输出一部分看看:
printf("%d %.8lf\n",x++,f[i-1]*1.0/f[i]);
// 有个小技巧,做题可以用:不用再去开一个for循环去输出f[i]/f[i+1],而是直接在第一个循环中对式子进行变形写成f[i-1]*1.0/f[i]即可,还需要注意x从几开始,可以和样例对照着看。
2 0.50000000
3 0.66666667
4 0.60000000
5 0.62500000
6 0.61538462
7 0.61904762
8 0.61764706
9 0.61818182
10 0.61797753
11 0.61805556
12 0.61802575
13 0.61803714
14 0.61803279
15 0.61803445
16 0.61803381
17 0.61803406
18 0.61803396
19 0.61803400
20 0.61803399
21 0.61803399
22 0.61803399
23 0.61803399
24 0.61803399
25 0.61803399
26 0.61803399
27 0.61803399
28 0.61803399
29 0.61803399
30 0.61803399
31 0.61803399
32 0.61803399
33 0.61803399
34 0.61803399
35 0.61803399
36 0.61803399
37 0.61803399
38 0.61803399
39 0.61803399
40 0.61803399
41 0.61803399
42 0.61803399
43 0.61803399
44 0.61803399
45 0.61803399
46 0.61803399
47 0.61803399
48 0.61803399
49 0.61803399
AC代码:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll f[25];
int main()
{
int n;
cin>>n;
f[1]=1,f[2]=1;
int x=2;
for(int i=3; i<=25; i++)
{
f[i]=f[i-1]+f[i-2];
//printf("%d %.8lf\n",x++,f[i-1]*1.0/f[i]);
}
if(n>=20)
cout<<"0.61803399"<<endl;
else
printf("%.8lf\n",f[n]*1.0/f[n+1]);
return 0;
}
注意
因为我只试了一组数据就是样例,导致代码一直不对,后来测一下数据发现是cout的问题,以前从来没有注意过这个问题,以为cout就是直接输出没有任何格式。
于是,我今天找bug找了好久。
这里说明一下,
C++默认流的输出有效位是6位。
所以我直接输出cout<<0.61803399<<endl这样子,是得不到正确答案的,只会输出0.618034。
cout格式化输出小数点后位数
#include <iomanip> 头文件
std::cout<<std::fixed<<std::setprecision(8)<<1.23456789123456<< std::endl; 控制输出位数8位的格式,这个之前用过,不好记,还是printf控制。
出错代码部分
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
cout<<"0.61803399"<<endl; // 0.61803399
cout<<0.61803399<<endl; // 0.618034
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」