题目链接:https://www.luogu.com.cn/problem/P1035

题目描述

已知:\(S_n= 1+1/2+1/3+…+1/n\)。显然对于任意一个整数 \(k\),当 \(n\) 足够大的时候,\(S_n>k\)。

现给出一个整数 \(k\),要求计算出一个最小的 \(n\),使得 \(S_n>k\)。

输入格式

一个正整数 \(k\)

输出格式

一个正整数 \(n\)

样例输入1

1

样例输出1

2

说明/提示

【数据范围】

对于 \(100\%\) 的数据,\(1\le k \le 15\)

题解

我道题目其实是找最小的满足 \(\sum_{i=1}^n S_i > k\) 的 \(n\) 。

我们可以开一个循环来模拟这个问题。

我们只需要一开始开两个变量:

  • 变量 \(S\) 表示当前和 \(S_n\)(初始时 \(S=0\));
  • 变量 \(n\) 表示当前的坐标 \(n\)(初始时 \(n=1\))。

然后 \(n\) 从 \(1\) 开始遍历(即 \(n = 1、2、3、 \cdots\) 这样遍历)。

每一次循环内我们让 \(S\) 加上 \(\lfloor \frac{1}{n} \rfloor\) 。

直到第一次满足 \(S > k\) 时,我们输出此时的 \(n\) 并结束我们的程序即可。

实现代码如下:

#include <bits/stdc++.h>
using namespace std;
double k, S; // 因为我们在计算S和k的时候S有可能是小数,所以这里都用double来保存
int n = 1; // n我还是用int,但是我在处理的时候会将其转换成double,
// 这样操作看上去有些多此一举,但是也是出于我的习惯囧。其实n也可以定义成double类型
int main() {
cin >> k;
while (true) {
S += 1.0 / (double) n; // 注意,表示常实数1最好加一个“,0”
if (S > k) {
cout << n << endl;
break;
}
n ++; // n要自增一,以进行下一步处理
}
return 0;
}

洛谷P1035 级数求和 题解 简单模拟的更多相关文章

  1. 洛谷P1035 级数求和

    #include <iostream> using namespace std; int main(){ long k,i; cin >> k; double s=0.0; ; ...

  2. 洛谷P1563 玩具谜题 简单模拟

    没意义,注意方向别判错. Code: #include<cstdio> #include<cstring> using namespace std; const int max ...

  3. 洛谷——P1035 级数求和

    https://www.luogu.org/problem/show?pid=1035 题目描述 已知:Sn= 1+1/2+1/3+…+1/n.显然对于任意一个整数K,当n足够大的时候,Sn大于K. ...

  4. Java实现 洛谷 P1035 级数求和

    import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = ...

  5. 洛谷NOIp热身赛题解

    洛谷NOIp热身赛题解 A 最大差值 简单树状数组,维护区间和.区间平方和,方差按照给的公式算就行了 #include<bits/stdc++.h> #define il inline # ...

  6. 洛谷 P5594 【XR-4】模拟赛

    洛谷 P5594 [XR-4]模拟赛 洛谷传送门 题目描述 X 校正在进行 CSP 前的校内集训. 一共有 nn 名 OIer 参与这次集训,教练为他们精心准备了 mm 套模拟赛题. 然而,每名 OI ...

  7. 洛谷P2827 蚯蚓 题解

    洛谷P2827 蚯蚓 题解 题目描述 本题中,我们将用符号 ⌊c⌋ 表示对 c 向下取整. 蛐蛐国最近蚯蚓成灾了!隔壁跳蚤国的跳蚤也拿蚯蚓们没办法,蛐蛐国王只好去请神刀手来帮他们消灭蚯蚓. 蛐蛐国里现 ...

  8. 洛谷P1816 忠诚 题解

    洛谷P1816 忠诚 题解 题目描述 老管家是一个聪明能干的人.他为财主工作了整整10年,财主为了让自已账目更加清楚.要求管家每天记k次账,由于管家聪明能干,因而管家总是让财主十分满意.但是由于一些人 ...

  9. 【题解】洛谷P3952 [NOIP2017TG] 时间复杂度(模拟)

    题目来源:洛谷P3952 思路 纯模拟没啥可说的了 果然好复杂 参考了你谷一个40行代码 代码 #include<iostream> #include<cstdio> #inc ...

随机推荐

  1. Python基础:26模块

    一:模块和文件 1:模块是逻辑上组织 Python 代码的方法,文件是物理层上组织模块的方法.因此,一个文件被看作是一个独立模块,一个模块也可以被看作是一个文件. 模块的文件名就是模块的名字加上扩展名 ...

  2. Top 10 open source projects of 2015

    Top 10 open source projects of 2015 Posted 15 Dec 2015Jen Wike Huger (Red Hat)Feed 188 up 31 comment ...

  3. Codeforces Round #174 (Div. 1 + Div. 2)

    A. Cows and Primitive Roots 暴力. B. Cows and Poker Game 模拟. C. Cows and Sequence 线段树维护. D. Cow Progra ...

  4. PythonWeb框架之Django

    Django 简介: Django是一个开放源代码的Web应用框架,由Python写成.采用了MTV的框架模式,即模型Model,模板Template和视图View.此框架设计模式借鉴了MVC框架的思 ...

  5. Vue 动画的钩子函数

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. 从零开始学习Kafka

    简介 kafka是一个分布式消息队列.具有高性能.持久化.多副本备份.横向扩展能力.生产者往队列里写消息,消费者从队列里取消息进行业务逻辑.一般在架构设计中起到解耦.削峰.异步处理的作用. Kafka ...

  7. python模块之序列化模块

    序列化 """ 序列--字符串 序列化--其他数据类型转化为字符串数据类型 反序列化--字符串转化为其他数据类型 """ json模块 &q ...

  8. php检测函数

    验证字符串是否为电子邮箱  var_dump(filter_var('bob@example.com', FILTER_VALIDATE_EMAIL));       //bob@example.co ...

  9. js基础-原型

    1.定义:我们创建的函数都有一个prototype(原型)属性,该属性是一个对象,          原型模式声明中多了两个属性(自动生成). 构造函数:       function Box(nam ...

  10. H3C RIP基本配置