2231번
문제
- 자연수 N이 주어졌을 때 N의 가장 작은 생성자를 구하는 문제
- 예를 들어 245의 분해합은 256(=245+2+4+5), 반대로 245는 256의 생성자
문제 해결 순서
- 입력받은 N-1만큼 반복문을 돌며 N을 String형으로 변경한 후 한 자리씩 sum에 더함
- i + sum이 입력받은 N과 같다면 result에 i를 넣음
- result 출력
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
int i;
int result = 0;
for(i=n-1; i>0; i--){
int sum = 0;
String input_st = String.valueOf(i);
for(int j=0; j<input_st.length(); j++) {
sum+=input_st.charAt(j)-48;
}
if(i+sum == n){
result = i;
}
}
System.out.print(result);
}
}