문제

어떤 자연수의 분해합은 그 자연수와 자연수를 이루는 각 자리수의 합이다. 예를 들어, 123의 분해합은 129(123+1+2+3)가 된다.

또, 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어 123은 129의 생성자가 된다.

자연수가 주어졌을 때, 그 자연수의 가장 작은 생성자를 구하는 프로그램을 작성해보자.

입력

첫째 줄에 자연수 N(1≤N≤1,000,000)이 주어진다.

출력

첫째 줄에 답을 출력한다. 생성자가 없는 경우에는 0을 출력한다.

예제 1 입력

216

예제 1 출력

198

예제 2 입력

158

예제 2 출력

151

Source

n = int(input())
flag = False

for i in range(n):
	j = i
	_sum = 0

	while (j > 0):
		_sum += j % 10
		j //= 10

	if(_sum + i == n):
		print(i)
		flag = True
		break

if (flag == False):
	print(0)