Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[LeetCode] 1281. Subtract the Product and Sum of Digits of an Integer #1281

Open
grandyang opened this issue May 30, 2019 · 0 comments
Open

Comments

@grandyang
Copy link
Owner

grandyang commented May 30, 2019

Given an integer number n, return the difference between the product of its digits and the sum of its digits.

Example 1:

Input: n = 234
Output: 15
Explanation:
Product of digits = 2 * 3 * 4 = 24
Sum of digits = 2 + 3 + 4 = 9
Result = 24 - 9 = 15

Example 2:

Input: n = 4421
Output: 21
Explanation: Product of digits = 4 * 4 * 2 * 1 = 32
Sum of digits = 4 + 4 + 2 + 1 = 11
Result = 32 - 11 = 21

Constraints:

  • 1 <= n <= 10^5

这道题给了一个正整数n,让求其每一位的数字的乘积减去每一位数字的和,并不算一道难题,只要知道如何取出每一位上的数字基本上就可以秒解,也符合其 Easy 的身价。取每一位上的数字就用一个 while 循环,只要n大于0就一直循环,通过对 10 取余就可以取出个位上的数字,将其乘到 prod 中,加到 sum 中,然后n自除以 10,就可以去掉已经取出的数字,然后再进行上述的操作,直到每一位的数字都被取出并处理了,最后返回 prod 减去 sum 的值即可,参见代码如下:

class Solution {
public:
    int subtractProductAndSum(int n) {
        int prod = 1, sum = 0;
        while (n > 0) {
            int digit = n % 10;
            prod *= digit;
            sum += digit;
            n /= 10;
        }
        return prod - sum;
    }
};

Github 同步地址:

#1281

参考资料:

https://leetcode.com/problems/subtract-the-product-and-sum-of-digits-of-an-integer/

https://leetcode.com/problems/subtract-the-product-and-sum-of-digits-of-an-integer/discuss/446372/JavaC%2B%2BPython-Straight-Forward-Solution

LeetCode All in One 题目讲解汇总(持续更新中...)

喜欢请点赞,疼爱请打赏❤️~.~

微信打赏

|

Venmo 打赏


---|---

@grandyang grandyang changed the title [LeetCode] 1281. Missing Problem [LeetCode] 1281. Subtract the Product and Sum of Digits of an Integer Apr 15, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant