力扣200B

文章目录

1.题目链接

Drinks

2.题目代码

cpp 复制代码
#include<iostream>
#include<iomanip>
using namespace std;
int main(){
    int numberOfOrangeContain;
    cin >> numberOfOrangeContain;
    int totalVolume = 0;
    int volumeFractionOfOrangeJuice;
    for(int drinkSubscript = 1; drinkSubscript <= numberOfOrangeContain; drinkSubscript ++){
        cin >> volumeFractionOfOrangeJuice;
        totalVolume += volumeFractionOfOrangeJuice;
    }
    double totalVolume2= totalVolume;
    double numberOfOrangeContain2 = numberOfOrangeContain;
    printf("%.12f",totalVolume2 / 100 / numberOfOrangeContain2 * 100);
    return 0;
}

3.题目总结

用时:33min

卡住原因:① 变量类型设置有问题

② 最初使用while循环输入数据,导致后续参与运算时numberOfOrangeContain变量值发生变化

③ 对c++保留指定小数位数的运算结果的方法不太了解

4.学习别人代码的经验

① 变量可以直接设置成double类型,可以省略转换的过程

② 保留12位输出结果的另一种方法:cout << setprecision(要保留的小数位数) << fixed << 参与运算的数据(即本题的:totalVolume2 / 100 / numberOfOrangeContain2 * 100);

③ 耗时 内存占用

我的代码: 92ms 4100KB

人家的代码:30ms 0KB

相关推荐
蹊黎1 小时前
C++中vector类的部分简单实现
开发语言·c++·visual studio
Navigator_Z7 小时前
LeetCode //C - 1289. Minimum Falling Path Sum II
c语言·算法·leetcode
mmmmath_38 小时前
LeetCode.104.二叉树的最大深度
数据结构·leetcode
xier_ran8 小时前
【infra之路】AI 编译器学习笔记(六):重拾 C++——lambda 与 MLIR 中的回调
c++·笔记·学习
jimy110 小时前
c++的 Type Traits (一)
开发语言·c++
别动我齐刘海10 小时前
Linux 系统调试学习2
linux·运维·c++·人工智能·学习·机器学习·机器人
ZZHow102411 小时前
Ascend C算子开发(高级)笔记
c++·人工智能·笔记·深度学习·华为云
Tisfy12 小时前
LeetCode 2333.最小差值平方和:排序 + 数学计算(不用二分)
数学·算法·leetcode·题解·贪心·排序
aqiu11111112 小时前
【C++算法打怪专栏】LeetCode 217. 存在重复元素(解法总结)
c++·算法·leetcode
lojox12 小时前
深入理解 C++ STL:vector 底层实现、迭代器失效与 list 特性
开发语言·c++