洛谷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
}

完结撒花!

相关推荐
呃呃本14 分钟前
算法题(矩阵)
线性代数·算法·矩阵
2301_7890156214 分钟前
Linux基础指令(一)
linux·运维·服务器·c语言·开发语言·c++·linux指令
呃呃本24 分钟前
算法题(普通数组、矩阵)
线性代数·算法·矩阵
计算机安禾30 分钟前
【计算机网络】第11篇:链路状态路由协议——Dijkstra算法与OSPF的分区架构
计算机网络·算法·架构
珂朵莉MM30 分钟前
第七届全球校园人工智能算法精英大赛-算法巅峰赛产业命题赛第二赛季优化题--遗传算法
人工智能·算法
gihigo199831 分钟前
严格耦合波分析计算光栅衍射效率算法
算法
可编程芯片开发32 分钟前
基于双Qlearning强化学习的温差发电系统电压动态补偿算法matlab仿真
算法·matlab·双qlearning强化学习·电压动态补偿·温差发电系统
Java成神之路-36 分钟前
【LeetCode 刷题笔记】69.x 的平方根 | 二分查找经典刷题题解
算法·leetcode
灵智实验室38 分钟前
PX4状态估计技术EKF2详解(一):EKF2 开篇——从分离到统一
算法·无人机·px 4
小智老师PMP38 分钟前
六月PMP晚启动急救|现在开始,每天2-3小时,稳冲一次上岸(附可直接照搬计划)
算法·软件工程·求职招聘·产品经理·敏捷流程