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 Go (1.6) (judge verdict: Wrong Answer)

package main

import (
	"strconv"
	"strings"
	"fmt"
)

func main() {
	var k int
	fmt.Scan(&k)
	min := sumOfDigits(k)
	i := k

	for i > 0 {
		sum := sumOfDigits(k * i)
		if sum < min {
			min = sum
		}
		i--
	}
	fmt.Println(min)
}

func sumOfDigits(num int) int {
	str := strconv.Itoa(num)
	arr := strings.Split(str, "")
	numArr := make([]int, len(arr))
	for i, v := range arr {
		n, err := strconv.Atoi(v)
		if err != nil {
			panic(err)
		}
		numArr[i] = n
	}
	sum := 0
	for _, v := range numArr {
		sum += v
	}
	return sum
}