Leetcode Note: Go - Add Digits

Add Digits - LeetCode
https://leetcode.com/problems/add-digits/

  • Go 言語で取り組んだメモ

所感

  • int の num が渡ってくる
  • 各桁を加算
  • 加算した結果の各桁を加算した値を return する
  • 例: num = 38 なら 3 + 8 = 11 で 1 + 1 = 2 となる

回答

Add Digits - LeetCode
https://leetcode.com/problems/add-digits/solution/

func addDigits(num int) int {
    if num == 0 {
        return 0
    }
    
    if num % 9 == 0 {
        return 9
    }
    
    return num % 9
}
  • num を各桁の数値に分解してから加算する・・・みたいな方法思いつきがち
  • 9 で除算した余りが桁数の合計値になるので、これで良い
    • かなり数学的まアプローチだ