알고리즘/Programmers

[Programmers]하샤드 수_자바 / 프로그래머스 연습문제(level 1)

씨네 2021. 8. 8. 18:53
728x90

https://programmers.co.kr/learn/courses/30/lessons/12947?language=java 

 

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

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

programmers.co.kr

 

왠지 모르게 처음에는 문제 이름이 하샤드 수라서 어려워 보일거같은 문제였습니다만 그리 어렵지 않습니다!

주어진 숫자의 자리수를 더하고 그 더한 숫자를 주어진 숫자와 나누었을때 나누어 떨어지면 ture 나누어 떨어지지 않으면 false를 리턴하는 문제입니다.

 

class Solution {
    public boolean solution(int x) {
        boolean answer = true;
        int tmp = 0;
        String [] xArr = (x+"").split("");
        
        for(int i = 0; i < xArr.length; i++){
            tmp += Integer.parseInt(xArr[i]);
        }
        
        if(!(x % tmp == 0)){
            answer = false;
        }
        
        return answer;
    }
}

쉽죠??

728x90