본문 바로가기
Algorithm/백준풀이

[알고리즘 문제풀이] 백준 4673 셀프 넘버 /JAVA

by 계범 2022. 1. 30.

목차

    https://www.acmicpc.net/problem/4673

     

    4673번: 셀프 넘버

    셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때,

    www.acmicpc.net

    import java.io.*;
    import java.util.*;
    
    public class Main {
        public static void main(String[] args) {
            int [] numbers = new int[10001];
    
            int num = 1;
    
            while(num <10000){
                int sum = num;
                int num2 = num;
                while(num2 > 0){
                    sum += num2 % 10;
                    num2 /= 10;
                }
                if (sum <= 10000){
                    numbers[sum] = 1;
                }
                num += 1;
            }
            for(int i = 1; i<=10000; i++){
                if(numbers[i] == 0){
                    System.out.println(i);
                }
            }
        }
    }

    댓글