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 Ruby (2.3.3) (judge verdict: Accepted)

K = gets.to_i

def bfs01(k)
  q, v = [[1, 1]], [0] * k
  until q.empty? do
    n, c = q.shift
    return c if n == 0
    v[n] = 1
    m = (10 * n) % K; q.unshift([m, c]) if v[m] == 0
    m = (n + 1) % K; q.push([m, c + 1]) if v[m] == 0
  end
end

puts bfs01(K)