지극히 개인적인 개발블로그
백준 알고리즘 2231: 분해합 (Java) 본문
풀이: 문제의 분류가 브루트 포스인만큼 for문 냅다 돌려서 생성자를 구해내면 됩니다.
String의 메소드인 valueOf와 charAt의 사용법을 알아두는게 중요합니다.
import java.util.*;
public class Sol_2231 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int ans = 0;
for(int i=N; i>0; i--)
{
int sum = 0;
String strN = String.valueOf(i);
for(int j=0; j<strN.length(); j++)
{
sum += strN.charAt(j)-48;
}
if(i + sum == N)
ans = i;
}
if(ans == 0)
System.out.println(0);
else
System.out.println(ans);
}
}