| Run ID | 作者 | 问题 | 语言 | 测评结果 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|
| 80127 | sh25_huangse | 求分数序列和 | C++ | 通过 | 0 MS | 256 KB | 666 | 2026-01-04 15:02:09 |
#include <iostream> #include <iomanip> using namespace std; int main() { int n; cin >> n; double sum = 0.0; long long p = 1, q = 2; // 使用long long防止大数溢出 for (int i = 0; i < n; i++) { // 1. 累加当前项 q/p sum += (double)q / p; // 2. 计算下一项的 p 和 q long long next_q = q + p; // q(i+1) = q(i) + p(i) long long next_p = q; // p(i+1) = q(i) // 3. 更新 p, q 为下一项的值 p = next_p; q = next_q; } // 输出结果,保留4位小数 cout << fixed << setprecision(4) << sum << endl; return 0; }