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

LeetCode题解之整数的各位积和之差

作者: l1fe1 | 来源:发表于2020-07-07 22:35 被阅读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

解题思路

通过取模运算得到 n 的最后一位,依次进行乘法和加法运算,然后相减得到结果。

复杂度分析

  • 时间复杂度:O(logn)。
  • 空间复杂度:O(1)。

代码实现

class Solution {
    public int subtractProductAndSum(int n) {
        int mul = 1;
        int add = 0;
        while (n > 0) {
            mul *= n % 10;
            add += n % 10;
            n /= 10;
        }
        return mul - add;
    }
}

相关文章

  • LeetCode题解之整数的各位积和之差

    宝石与石头 题目描述 给你一个整数 n,请你帮忙计算并返回该整数「各位数字之积」与「各位数字之和」的差。 示例1 ...

  • LeetCode 整数的各位积和之差

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

  • 整数的各位积和之差(力扣)

    解题思路 首先用j将n保护起来,不能使n被破坏数据; count是代表n的位数; 让j除以10,因为除到最后一位是...

  • 整数计算各位之积-各位之和

    思路,整数转换为字符串再转化为char数组方案一:暴力破解数据结构:字符数组算法思维:遍历 方案二:数学思维解法数...

  • LeetCode题解:整数反转

    题目描述 给你一个32位的有符号整数x,返回将x中的数字部分反转后的结果。如果反转后整数超过32位的有符号整数的范...

  • 2022-02-27 整数积和之差js

    给定一个数字 数字的每一个相乘积,然后数字每一个相加,用乘积的数减去加得的最终值。 代码如下:

  • C#顺序结构练习三

    9、编程:输入一个三位整数x(999=>x>=100),将其分解出百位、十位、个位,并求出各位之和以及各位之积 1...

  • LeetCode题解

    LeetCode题解

  • leetcode题解-7. 整数反转

    https://leetcode-cn.com/problems/reverse-integer/[https:/...

  • DP训练——数位DP

    数位DP BZOJ1026题意求到间,不含前导零且相邻两个数字之差至少为的正整数的个数。题解状态定义:表示当前处理...

网友评论

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

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