main
[백준-2231번/Java] 분해합 본문
https://www.acmicpc.net/problem/2231
* 10 나머지 연산 / 10 나누기 연산을 이용해서 자릿수를 더했다.
* 가장 작은 생성자를 구해야 하므로, 최초로 생성자를 찾으면 for문을 break해서 빠져나온다.
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
Scanner in = new Scanner(System.in);
int N = in.nextInt();
int answer = 0;
for (int i = 1; i < 1000001; i++) {
int constructor = i;
int sum = i;
while (constructor > 0) {
sum += constructor % 10;
constructor /= 10;
}
if (sum == N) {
answer = i;
break; // 최솟값
}
}
System.out.println(answer);
}
}
728x90
'Algorithm' 카테고리의 다른 글
[백준-1436번/Java] 영화감독 숌 (0) | 2022.11.21 |
---|---|
[백준-7568번/Java] 덩치 (0) | 2022.11.21 |
[백준-10815번/Java] 숫자 카드 (0) | 2022.11.20 |
[백준-1966번/Java] 프린터 큐 (0) | 2022.11.19 |
[백준-1271번/Java] 엄청난 부자2 (0) | 2022.11.19 |
Comments