Notice
Recent Posts
Recent Comments
Link
Dev.baelanche
[백준 2231] 분해합 본문
반응형
문제
자연수의 범위가 최대 1000000 이고 시간복잡도가 O(n2) 이상일 수 없으므로 완전탐색으로 접근했다.
1. 가장 작은 생성자를 구해야하니 연산할 숫자는 작은수에서 증가한다.
2. 생성자는 입력한 자연수보다 작으니 반복 범위는 n 보다 작을때이다.
Java
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int i=0, sum=0;
while(i<=n){
i++;
int se = i;
sum = se;
while(se >= 1){
int div = se%10;
se /= 10;
sum += div;
}
if(sum == n){
System.out.println(i);
break;
}
if(i == n)
System.out.println(0);
}
}
반응형
'Data Structure & Algorithm > PS - JAVA' 카테고리의 다른 글
[백준 1463] 1로 만들기 (0) | 2019.03.31 |
---|---|
[백준 2503] 숫자 야구 (0) | 2019.03.29 |
[백준 10448] 유레카 이론 (0) | 2019.03.29 |
[백준 3085] 사탕 게임 (0) | 2019.03.28 |
[백준 2309] 일곱 난쟁이 (0) | 2019.03.28 |
Comments