当前位置: 代码迷 >> 综合 >> 05 Subtract the Product and Sum of Digits of an Integer
  详细解决方案

05 Subtract the Product and Sum of Digits of an Integer

热度:84   发布时间:2024-01-26 14:49:11.0

题目

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

解析

题目通俗易懂,不多做解释。
解题关键就在于获取到一个数的每位数—>取余10再除以10,重复操作即可
如123
123%10=3
123/10=12 12%10=2
12/10=1 1%10=1

答案

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

在这里插入图片描述

评论区似乎没有其他更好的解法。

  相关解决方案