본문 바로가기
알고리즘/백준

백준 2231 분해합 자바

by reumiii 2020. 1. 20.

 

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
		int n = sc.nextInt(); // 자연수 n
		int result = 0;

		for (int i = 1; i <= n; i++) {
			int sum = i + sum(i); // i와 i의 자리수의 합

			if (sum == n) {// i와 i의 자리수의 합이 n이 같으면 i는 n의 생성자
				result = i;
				break;
			}
		}

		System.out.println(result);
	}

	static int sum(int num) {// 자리수의 합을 구하는 함수
		if (num / 10 <= 0) {// 1의 자리이면 리턴
			return num;
		}

		return (num % 10) + sum(num / 10);// 자리수 더함
    }
}

 

'알고리즘 > 백준' 카테고리의 다른 글

백준 1018 체스판 다시 칠하기 자바  (0) 2020.01.22
백준 7568 덩치 자바  (0) 2020.01.21
백준 2798 블랙잭 자바  (0) 2020.01.16
10870 피보나치 수 5 자바  (0) 2020.01.14
백준 1002 티렛 자바  (0) 2020.01.13

댓글