力扣2457 美丽整数最小增量

简介: 力扣2457 美丽整数最小增量

给你两个正整数 ntarget

如果某个整数每一位上的数字相加小于或等于 target ,则认为这个整数是一个 美丽整数

找出并返回满足 n + x美丽整数 的最小非负整数 x 。生成的输入保证总可以使 n 变成一个美丽整数。

示例 1:

输入:n = 16, target = 6

输出:4

解释:最初,n 是 16 ,且其每一位数字的和是 1 + 6 = 7 。在加 4 之后,n 变为 20 且每一位数字的和变成 2 + 0 = 2 。可以证明无法加上一个小于 4 的非负整数使 n 变成一个美丽整数。

思路:

不断的+1,产生进位然后和数进行对比

class Solution {
    public int getSum(long n ){
        int sum=0;
        while(n>0){
            sum+=n%10;
            n/=10;
        }
        return sum;
    }
 
    public long makeIntegerBeautiful(long n, int target) {
        if(getSum(n)<=target) return 0;
        long mod=10L,res=0L;
        while(getSum(n)>target){
            long t=mod-n%mod;
            res+=t;
            n+=t;
            mod*=10;
        }
        return res;
    }
}
相关文章
|
22天前
|
算法 Java
[Java·算法·简单] LeetCode 13. 罗马数字转整数 详细解读
[Java·算法·简单] LeetCode 13. 罗马数字转整数 详细解读
27 0
|
22天前
|
存储 Python
leetcode-7:整数反转
leetcode-7:整数反转
26 1
|
22天前
【Leetcode】两数之和,给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。
【Leetcode】两数之和,给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。
|
22天前
leetcode代码记录(整数拆分
leetcode代码记录(整数拆分
17 0
|
22天前
[leetcode~数位动态规划] 2719. 统计整数数目 hard
[leetcode~数位动态规划] 2719. 统计整数数目 hard
|
22天前
|
存储 算法
leetcode1237. 找出给定方程的正整数解
leetcode1237. 找出给定方程的正整数解
9 0
|
22天前
|
算法 Java
【力扣经典面试题】12. 整数转罗马数字
【力扣经典面试题】12. 整数转罗马数字
|
22天前
leetcode2376. 统计特殊整数
leetcode2376. 统计特殊整数
18 1
|
22天前
|
Serverless
leetcode2719. 统计整数数目
leetcode2719. 统计整数数目
15 0
|
22天前
|
Java
LeetCode-整数转罗马数字=Java
整数转罗马数字=Java题解
14 0