美文网首页
LeetCode 整数的各位积和之差

LeetCode 整数的各位积和之差

作者: 吴敬悦 | 来源:发表于2021-01-31 23:41 被阅读0次

    给你一个整数 n,请你帮忙计算并返回该整数「各位数字之积」与「各位数字之和」的差。

    示例 1:

    输入:n = 234
    输出:15 
    解释:
      各位数之积 = 2 * 3 * 4 = 24 
      各位数之和 = 2 + 3 + 4 = 9 
      结果 = 24 - 9 = 15
    

    示例 2:

    输入:n = 4421
    输出:21
    解释: 
      各位数之积 = 4 * 4 * 2 * 1 = 32 
      各位数之和 = 4 + 4 + 2 + 1 = 11 
      结果 = 32 - 11 = 21
    

    提示:

    • 1 <= n <= 10^5

    我的算法实现为:

    class Solution {
        public int subtractProductAndSum(int n) {
            int sum1 = 1;
            int sum2 = 0;
            int i = Math.abs(n);
            while (i != 0) {
                sum1 *= i%10;
                sum2 += i%10;
                i /= 10;
            }
            return sum1 - sum2;
        }
    }
    

    不知道为啥使用 java 实现都是 0ms 。思路很简答,就是将每一数同时乘和加,然后相减。这个很简单,官方的解法也是跟我一样实现的。


    来源:力扣(LeetCode)

    相关文章

      网友评论

          本文标题:LeetCode 整数的各位积和之差

          本文链接:https://www.haomeiwen.com/subject/nivdtltx.html