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 Haskell (GHC 7.10.3) (judge verdict: Wrong Answer)

import Data.Char

getDigitSum :: Integer -> Integer
getDigitSum num = fromIntegral . sum $ map (\c -> ord c - ord '0') (show num)

main :: IO ()
main = do
  num <- read <$> getLine :: IO Integer
  let ans = minimum $ map getDigitSum $ zipWith (*) [1..1000000] $ replicate 1000000 num
  putStrLn . show $ ans