Development/Algorithm

[BOJ] 2231. 분해합

동스토리 2020. 10. 2. 14:20
반응형

문제

www.acmicpc.net/problem/2231

 

2231번: 분해합

어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이

www.acmicpc.net


해설

 


코드

#include<iostream>

using namespace std;


int main() {

	ios::sync_with_stdio(false);
	cin.tie(NULL), cout.tie(NULL);
	int N;
	cin >> N;
	int sum;
	int con;

	for (int i = 1; i <= N; i++) {
		sum = i;
		con = i;

		while (con != 0) {
			sum += con % 10;
			con /= 10;
		}
		if (N == sum)
		{
			cout << i;
			return 0;
		}
	}
	cout << "0";
}

 

반응형