공부하는 히욤이

[BOJ] 2231. 분해합 본문

Algorithm/BaekJoon

[BOJ] 2231. 분해합

히욤이 2019. 8. 3. 22:41

BaekJoon 2231. 분해합

 

* 문제의 저작권은 BOJ 및 문제를 만든 사람에게 있습니다.

 

 

 

 

 

 

[문제 접근]

 

1부터 N까지 범위를 주고 값을 찾는다

값을 int로 받았지만 각 자리의 숫자도 있어야 하기 때문에 String으로 변환 시켜서 리스트에 하나씩 넣어줬다

리스트에 있는 값들과 + i값이 N과 같으면 정답

 

 

 

 

 

[코드]

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;

public class Main_2231 {
	public static void main(String[] args) throws Exception, IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int N = Integer.parseInt(br.readLine());
		int answer = 0;
		for (int i = 1; i <= N; i++) {
			String num = String.valueOf(i);
			ArrayList<Integer> list = new ArrayList<Integer>();
			for (int j = 0; j < num.length(); j++) {
				list.add((int)num.charAt(j)-48);
			}
			
			int sum = 0;
			for (int j = 0; j < list.size(); j++) {
				sum = sum + list.get(j);
			}
			
			answer = i + sum;
			if (answer == N) {
				answer = i;
				break;
			} else {
				answer = 0;
			}
			//System.out.println(arr.size());
			
		}

		System.out.println(answer);		
	}
}

'Algorithm > BaekJoon' 카테고리의 다른 글

[BOJ] 2750. 수 정렬하기  (0) 2019.08.03
[BOJ] 1436. 영화감독 숌  (0) 2019.08.03
11724번 : 연결 요소의 개수  (0) 2019.03.07
2606번 : 바이러스  (1) 2019.03.07
9498번 : 시험 성적  (0) 2019.02.18