整数的各位积和之差

整数的各位积和之差

给你一个整数 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

答案

func subtractProductAndSum(n int) int {
	s, p := 0, 1  // 定义好最原始的和与积
	num := []int{}  // 定义一个数组
 	for n != 0{
        // 取个位
 		num = append(num, n % 10)
 		n /= 10 // 截取个位
	}
	for _, v := range num{
		s += v
		p *= v
	}
	return p - s
}
posted @ 2021-02-04 15:13  李大鹅  阅读(187)  评论(0编辑  收藏  举报