교육/코테

[프로그래머스]JAVA 하샤드 수

가이버2 2022. 6. 29. 12:25

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

 

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

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

programmers.co.kr

import java.util.*;
import java.util.stream.Collectors;

class Solution {
    public boolean solution(int x) {
        Boolean answer = false;

        String s = String.valueOf(x);
        List<Integer> collect = s.chars()
                .mapToObj(v -> Integer.valueOf(String.valueOf((char) v)))
                .collect(Collectors.toList());

        int sum = collect.stream()
                .mapToInt(v -> v)
                .sum();

        if(x % sum == 0) answer = true;
        return answer;
    }
}