B题
解法思路
$f(n)$和$f(n-1)$之间的区别就是式子的底部加了一个$\frac{1}{a}$
e.g.$f(2)=a+\frac{1}{a},f(3)=a+\cfrac{1}{a+\cfrac{1}{a}}$
根据递推关系可知,当n趋近于无穷大的时候这个影响可以忽略不计,所以我们可以得到$x=a+\frac{1}{x}$
解方程并且取正解可得答案
Solution
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| #include<bits/stdc++.h> using namespace std; using ll=long long; ll read() { ll a=0;int f=0;char p=getchar(); while(!isdigit(p)){f|=p=='-';p=getchar();} while(isdigit(p)){a=(a<<3)+(a<<1)+(p^48);p=getchar();} return f?-a:a; }
void huangyu(){ double a; cin >> a; cout << (a + sqrtl(a * a + 4)) / 2 << '\n'; }
int main(){ ios::sync_with_stdio(0); cin.tie(nullptr),cout.tie(nullptr); cout << fixed << setprecision(15); int tt; cin>>tt; while(tt--){ huangyu(); }
return 0; }
|