洛谷P1035 级数求和 题解

#题外话(第42篇题解)

#先看题目

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

没啥思路,这其实偏向模拟一点,按照题目说的做就行了。

#代码

原来是这个熊样的(都能AC,优化的问题)

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int main(){
    double i=1,cnt=0,k,sum=0,x;
    cin>>k;
    while(sum<=k){
        x=1.0/i;
        sum+=x;
        cnt++;i++;
    }
    cout<<cnt;
    return 0;
}

但是后来又想了想,优化成了这样:(cnt和i其实差不多)

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int main(){
    double i=1,cnt=0,k,sum=0,x;
    cin>>k;
    while(sum<=k){
        x=1.0/(cnt+1);
        sum+=x;
        cnt++;
    }
    cout<<cnt;
    return 0;
}

再来一波注释:

cpp 复制代码
#include <bits/stdc++.h>//看它干什么?没见过吗~
using namespace std;//命冥空间
#define qwq return 0;
double cnt=0,k,sum=0,x;//得用double哈
int main(){
    //freopen("a.in","r",stdin);freopen("a.out","w",stdout);
    //上面这行的话......
    cin>>k;//先整进来
    while(sum<=k){//循环,当和小于目标数时一直干
        x=1.0/(cnt+1);//产生"级数"
        sum+=x;//级数求和
        cnt++;//其实可以优化成for,但懒得弄了
    }
    cout<<cnt;//输出
    qwq
}

完结撒花!

相关推荐
superman超哥3 分钟前
仓颉Option类型的空安全处理深度解析
c语言·开发语言·c++·python·仓颉
2401_841495643 分钟前
【LeetCode刷题】跳跃游戏Ⅱ
数据结构·python·算法·leetcode·数组·贪心策略·跳跃游戏
leaves falling5 分钟前
动态规划讲解
算法·动态规划
你好音视频15 分钟前
FFmpeg FLV解码器原理深度解析
c++·ffmpeg·音视频
报错小能手19 分钟前
C++ STL bitset 位图
开发语言·c++
橘子真甜~21 分钟前
Reids命令原理与应用1 - Redis命令与原理
数据库·c++·redis·缓存
钓鱼的肝22 分钟前
GESP系列(3级)小杨的储蓄
开发语言·数据结构·c++·笔记·算法·gesp
MicroTech202528 分钟前
MLGO微算法科技推出人工智能与量子计算融合新成果:基于QLSS与LCHS的量子DPM算法技术
人工智能·科技·算法
AndrewHZ36 分钟前
【图像处理基石】[特殊字符]圣诞特辑:10+经典图像处理算法,让你的图片充满节日氛围感!
图像处理·人工智能·opencv·算法·计算机视觉·stable diffusion·节日氛围感
艾醒42 分钟前
大模型原理剖析——矩阵吸收优化:LLM推理加速的核心原理与实践
算法