Problem:
Score : 700 points

Problem Statement

Find the smallest possible sum of the digits in the decimal notation of a positive multiple of K.

Constraints

2 \leq K \leq 10^5

K is an integer.

Input

Input is given from Standard Input in the following format:

K

Output

Print the smallest possible sum of the digits in the decimal notation of a positive multiple of K.

Sample Input 1

6

Sample Output 1

3

12=6×2 yields the smallest sum.

Sample Input 2

41

Sample Output 2

5

11111=41×271 yields the smallest sum.

Sample Input 3

79992

Sample Output 3

36

Solution in Python (3.4.3) (judge verdict: Wrong Answer)

from collections import deque

def sum_digit(x):
    res = 0
    while x > 0:
        res += x % 10
        x //= 10
    return res

def solve(k):
    que = deque()
    que.append(1)
    best = sum_digit(k)
    used = {i: False for i in range(k)}
    while que:
        x = que.pop()
        if x % k == 0:
            best = min(best, sum_digit(x))
        y = x + 1
        if not used[y % k]:
            used[y % k] = True
            que.appendleft(y)
        z = 10 * x
        if not used[z % k]:
            used[z % k] = True
            que.append(z)
    return best

k = int(input())
print(solve(k))