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 C++14 (GCC 5.4.1) (judge verdict: Time Limit Exceeded)

        #include <bits/stdc++.h>

        using namespace std;

        typedef long long LL;
        typedef pair<int, int> PII;


        int main() {
            ios_base::sync_with_stdio(false);
            LL n;
            cin >> n;
            while (n % 10 == 0) {
                n/=10;
            }
            LL sum = 0;
            LL q = n;
            while (q > 0) {
                sum+=q%10;
                q/=10;
            }
            for (LL i = n; i < n * 100000000; i+=n) {
                LL t = i;
                q = 0;
                while (t > 0) {
                    q+=t%10;
                    t/=10;
                }
                sum = min (sum, q);
            }
            cout << sum << endl;
            return 0;
        }