主題

LeetCode - 1281. Subtract the Product and Sum of Digits of an Integer 解題心得

Not In My Back Yard | 2021-12-19 00:00:05 | 巴幣 0 | 人氣 114

題目連結:


題目意譯:
給定一整數 n,回傳他的各個位數乘積與各個位數總和之差。

限制:
1 ≦ n ≦ 10 ^ 5



範例測資:
範例 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


解題思維:
藉由重複取除以 10 取餘數、商數,然後將商數替換現在的 n 值之動作,便可以得到每個位數之值。將其全數乘起來便可以得到乘積、加起來則得總和,將乘積減去總和即是所求。




此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。

創作回應

相關創作

更多創作