ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 22. 하샤드 수
    코딩 테스트/Level 1 2019. 10. 20. 23:30
    반응형

    https://programmers.co.kr/learn/courses/30/lessons/12947

    앞서 풀었던 21.자릿수 더하기와 유사합니다. 참고.

    파이썬

    def solution(x):
        return not (x % sum([int(i) for i in str(x)]))
    def solution(x):
        return not (x % sum(map(int, str(x))))

     

    자바스크립트

    function solution(x) {
        return !(x % String(x).split('').map(Number).reduce((a, b) => a + b))
    }

     

    자바

    class Solution {
        public boolean solution(int x) {
            int sum = 0;
            for (char num: String.valueOf(x).toCharArray()) 
                sum += (num -'0');
            return x % sum == 0;
        }
    }
    class Solution {
        public boolean solution(int x) {
            return 0 == x % String.valueOf(x).chars().map(n -> n -'0').sum();
        }
    }

     

    코틀린

    class Solution {
        fun solution(x: Int): Boolean {
            return 0 == x % (x.toString().chars().map { it - '0'.toInt() }.sum())
        }
    }

     

    func solution(x int) bool {
        num := x
        sum := 0
        for i := 0; x >= 1; i++ {
            sum += (x % 10)
            x /= 10
        }
        return num%sum == 0
    }

     

    C#

    using System.Linq;
    
    public class Solution
    {
        public bool solution(int n) =>
            0 == n % n.ToString().ToCharArray().Aggregate(0, (a, b) => a + b - '0');
    }
    반응형
Designed by Tistory.