## solution  

자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미하고, 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다.  

자연수 N이 주어질때, N의 가장 작은 생성자를 구하기, 만약 생성자가 없다면 0을 출력한다.


## CODE  


```python

k = int(input());ans = 0

for _ in range(1,k+1):

    if _ + sum(map(int,list(str(_)))) == k:

        ans = _

        break

print(ans)

```

제출한 코드. range(1,k)로해도 정답이 나왔을것 같은데.  


```python

n=int(input())

print([*[i for i in range(n)if n==i+sum(map(int,str(i)))],0][0])

```

생성자 리스트를 뽑아서 \[0]번째 인덱스를 출력하는 풀이