본문 바로가기
Algorithm & SQL/BAEKJOON

백준 JAVA 4673 셀프 넘버

by YoonJong 2022. 7. 30.
728x90

package BAEKJOON.Silver.Ⅴ;

public class NO4673_2 {

    // 셀프넘버를 구분하기 위한 visit 배열 생성
    static boolean[] visit = new boolean[10001];

    // 셀프넘버를 구하기 위해 메서드 작성
    public static int self(int num) {
        // 셀프넘버 값(sum)
        int sum = num;
        // 각 자리수를 더할 때까지 반복
        while (num != 0) {
            sum += num % 10;
            num = num / 10;
        }
        // 셀프넘버를 리턴
        return sum;
    }

    public static void main(String[] args) {

        // 1~ 10000까지의 범위
        for (int i = 1; i < 10001; i++) {
            // sum의 값이 10000 이하일 경우에만 visit 인덱스값을 true 로 변경
            if (self(i) <= 10000) {
                visit[self(i)] = true;
            }
            // 셀프넘버가 아닌 값만 출력(false 인 인덱스)
            if (visit[i] == false) {
                System.out.println(i);
            }
        }
    }
}
728x90

'Algorithm & SQL > BAEKJOON' 카테고리의 다른 글

백준 JAVA 2075 N번째 큰수  (0) 2022.08.01
백준 JAVA 7568 덩치  (0) 2022.07.30
백준 JAVA 1927 최소 힙  (0) 2022.07.29
백준 JAVA 11279 최대 힙  (0) 2022.07.29
백준 JAVA 1697 숨바꼭질  (0) 2022.07.28

댓글