LeetCode每天刷day31:2019 力扣杯 最小化舍入误差以满足目标

该博客介绍了LeetCode的一道题目,要求通过舍入一系列价格来满足特定目标值,同时最小化舍入误差。博主分享了在解决过程中遇到的C++中保留小数的问题和对目标类型的疑惑。
摘要由CSDN通过智能技术生成

题目:
给定一系列价格 [p1,p2…,pn] 和一个目标 target,将每个价格 pi 舍入为 Roundi(pi) 以使得舍入数组 [Round1(p1),Round2(p2)…,Roundn(pn)] 之和达到给定的目标值 target。每次舍入操作 Roundi(pi) 可以是向下舍 Floor(pi) 也可以是向上入 Ceil(pi)。

如果舍入数组之和无论如何都无法达到目标值 target,就返回 -1。否则,以保留到小数点后三位的字符串格式返回最小的舍入误差,其定义为 Σ |Roundi(pi) - (pi)|( i 从 1 到 n )。

  • 1 <= prices.length <= 500 表示价格的每个字符串
  • prices[i] 都代表一个介于 0 和 1000 之间的实数,并且正好有 3 个小数位。
  • target 介于 0 和 1000000 之间。

题目链接:最小化舍入误差以满足目标
C++:
保留小数返回double类型把我搞懵了, 题目的target没有说是什么类型小声bb

class Solution {
public:
    static bool cmp(double a, double b){
        return a > b;
    }
    string minimizeError(vector<string>& prices, int target) {
        int lens = prices.size();
        vector<double> tmp;
        int 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值