알고리즘

프로그래머스 하샤드 수 (JAVA)

박카스마시며코딩 2022. 7. 3. 23:23

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

 

코딩테스트 연습 - 하샤드 수

양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하

programmers.co.kr

 

저는 먼저 x를 10의 모듈러 연산과 나누기 연산을 하여 각 자리의 합을 구하고

x가 이 합으로 나누어 떨어지는지를 확인하고 그 결과를 answer에 넣었습니다.

 

class Solution {
    public boolean solution(int x) {
        int sum = 0;
        int temp = x;
        while(temp > 0){
            sum += temp % 10;
            temp /= 10;
        }
        boolean answer = x % sum == 0;
        return answer;
    }
}