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)

INF = 10_0000_0007
K = gets.to_i

dist = Array.new(K, INF)
queue = [[1, 1]]
until queue.empty?
  v, c = queue.shift
  next if dist[v] <= c
  
  dist[v] = c
  queue << [(v+1)%K, c+1] if dist[(v+1)%K] > c+1
  queue << [(v*10)%K, c] if dist[(v*10)%K] > c
end

puts dist[0]