2457. 美丽整数的最小增量

题目

本题我之前也是和题解一样的想法,增加数还让它和变小只有进位操作可以。

关键在写法上,我是转为字符串去计算每次增加多少,比较麻烦。这种做法还是比较好,记录下。

cpp 复制代码
class Solution {
public:
    long long makeIntegerBeautiful(long long n, int target) {
       long long cur=n;
       long long i=10;
        while(true){
            int cursum=func(cur);
            if(cursum<=target)
                return cur-n;           //第一次    第二次
            cur/=i;                     //123->12   130->1
            cur++;                      //12->13    1->2
            cur*=i;                     //13->130   2->200
            i*=10;                      //注意,不可以将i变为10,因为随着次数增加,第一次需要10.第二次需要100
        }
        return 0;
    }
    int func(long long cur){
        int sum=0;
        while(cur>0){
            sum+=cur%10;
            cur/=10;
        }
        return sum;

    }
};
相关推荐
ysa05103012 小时前
优先队列贪心dp
c++·笔记·算法·板子
草莓熊Lotso13 小时前
【Linux网络】深入理解Linux IO多路复用:select服务器完善、内核原理与poll实战
linux·运维·服务器·c语言·网络·c++
Andy13 小时前
Cpp进阶语法详解
c++
此生决int14 小时前
深入理解C++系列(04)——类和对象(下)
开发语言·c++
2601_954526751 天前
【工业传感与算法实战】温漂补偿与零点抗漂破局:基于二阶多项式拟合的 C/C++ 边缘校准算法,深度拆解“压力变送器什么牌子好”的技术硬指标
c语言·c++·算法
code_pgf1 天前
`unordered_map` 详解
c++
一拳一个呆瓜1 天前
【STL】iostream 编程:检测提取操作产生的错误
c++·stl
稚南城才子,乌衣巷风流1 天前
判断素数与拓展应用
c++
众少成多积小致巨1 天前
C++ 规范参考(下)
c++
c238561 天前
把 C++ 内存分配拆透:new 与 malloc 的三层血缘
开发语言·c++·算法