题解 | #牛牛学数列3#
牛牛学数列3
https://ac.nowcoder.com/acm/problem/22158
将分子分母分开想这道题 分子不变,分母一直变化 且第i次的分母与第i-1的分母有关系 则可用m[i]=m[i-1]+(-1)^(n-1)*(2n-1)求解即可 分母解决就直接可以往主式子带入循环求解即可 注:因为保存数据用数组保存所以存在空间浪费问题,当判断数量过于庞大时可能存在超时问题; 本人菜鸡T-T#include<iostream> #include<iomanip> #include<math.h> using namespace std; int main() { int n, k; double sum = 0; double m[1000] = { 0 }; int i; cin >> n; for (k=1; k <= n; k++) { m[k] = m[k - 1] + pow(-1,(double)(k-1)) * (2 * k - 1); //计算分母 } for (i = 1; i <= n; i++) { sum += 1.0 / m[i]; //相加 } cout << fixed << setprecision(3); cout << sum << endl; return 0; }