[Java] 백준 - 4673번: Self Number (Silver V)

배똥회장·2022년 8월 19일
0
post-custom-banner

📝 문제

백준 - 4673번: Self Number (Silver V)


📝 풀이

📌 작성 코드

import java.io.*;
public class Main {
	public static void main(String[] args) throws IOException{
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		
        //체크용 boolean 배열
		boolean[] list = new boolean[10001];
		
        //1부터 10000까지 d() 함수로 보내고 체크하기
		for (int i = 1; i <= 10000; i++) {
			int num = d(i); //d함수 리턴값 : 정수
            
            //만약 리턴값이 10000보다 작고, 만들어진 적 없는 숫자라면 true로 체크하기
			if (num <= 10000 && !list[num]) list[num] = true;
		}
		
        //1부터 10000까지 방문 기록이 없는 숫자는 출력하기
		for (int i = 1; i < list.length; i++) {
			if (!list[i]) bw.write(i + "\n");
		}
		
		bw.flush();
		bw.close();
	}
	
	public static int d(int num) {
		int result = num;
		while (num > 0) {
			result += (num % 10);
			num /= 10;
		}
		return result;
	}
}

📌 결과


profile
어쩌면 개발자
post-custom-banner

0개의 댓글