[BOJ-Code] 2231 - 분해합

Posted by DHniyeo Blog on March 10, 2024

문제 링크

💡 브루트포스 알고리즘

Memory 1112KB Time 8ms Code Length 318B

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include<stdio.h>

int main()
{
	int n;
	int result = 0;
	scanf("%d", &n);


	for (int i = 0; i <= n; i++)
	{
		int sum = 0;
		int tmp = i;
		sum += tmp;

		// 245
		while (tmp / 10) {
			sum += tmp % 10;
			tmp = tmp / 10;
		}
		sum += tmp;

		if (sum == n) {
			result = i;
			break;
		}
	}
	printf("%d", result);

}

사용자로부터 정수를 입력받아 해당 정수가 입력된 수와 각 자리수의 합이 같은 수를 찾는 프로그램이다. 입력된 수부터 시작하여 각 자리수의 합을 구하고, 입력된 수와 비교하여 같은 경우 해당 수를 결과로 출력한다.