TB椰程 TypeBuddy 打字搭子

【例27.2】 最小n值

C++语法 · 循环结构 · 代码 · cpp · 难度 3/5 · 共 382 字

求调和级数首次不小于 m 的最小 n

  • C++语法
  • 例题

正文

// 原题:https://oj.yecheng.tv/p/P162
// 题意:求最小的 n,使
//       1 + 1/2 + 1/3 + ... + 1/n >= m。
// 思路:累加 1/n,一旦和不小于 m 就停,
//       循环条件用"还不够"来控制。
#include <iostream>
using namespace std;

int main() {
    int m;
    cin >> m;
    double sum = 0;
    int n = 0;
    // 和还不够 m 时继续加下一项
    while (sum < m) {
        n++;
        sum += 1.0 / n;
    }
    cout << n << endl;
    return 0;
}

C++语法 · 循环结构的其它内容

打字首页 · 词库画廊 · 编程打字 · 指法入门 · 天梯榜 · 数据分析 · 班级课堂 · 关于我们
椰程 TypeBuddy 打字搭子 —— 键盘指法练习 · 单词记忆 · 班级课堂 · 在线 PK