245의 분해합은 256(=245 + 2 + 4 + 5)입니다
245는 256의 생성자입니다
자연수 N의 가장 작은 생성자를 구합시다
1. 1부터 점점 높여가면서
2. 그 수 + 각 자리수 = N이 되면 출력합시다
3. N에 도달해버렸다면 0을 출력합시다
코드입니다
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int flag = 0;
int n = scan.nextInt();
for (int i=0; i<n; i++) {
int sum = i;
int len = String.valueOf(i).length();
for (int j=0; j<len; j++) {
sum += Integer.parseInt(String.valueOf(i).substring(j, j+1));
}
if(sum==n) {
System.out.println(i);
flag = 1;
break;
}
}
if(flag==0) {
System.out.println(0);
}
}
}
sum = i 부터 시작하지 않고
N - (N의 자릿수)*10부터 시작하면 연산이 줄지만
성공해버렸으니 나중에 합시다
'백준 문제풀기 > JAVA' 카테고리의 다른 글
[백준 2386 JAVA 자바] 도비의 영어 공부 (0) | 2023.07.31 |
---|---|
[백준 2292 JAVA 자바] 벌집 (0) | 2023.07.31 |
[백준 2217 JAVA 자바] 로프 (0) | 2023.07.31 |
[백준 2204 JAVA 자바] 도비의 난독증 테스트 (0) | 2023.07.31 |
[백준 2164 JAVA 자바] 카드2 (0) | 2023.07.31 |