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: Wrong Answer)

#include <stdio.h>

bool visit[100000];

int main()
{
	int K, dec = 1;

	scanf("%d", &K);

	while (!visit[dec])
	{
		visit[dec] = true;
		dec = (dec * 10) % K;
	}

	if (visit[0] == true) printf("1\n");
	else
	{
		for (int i = K-1; i >= 1; i--)
		{
			if (visit[i])
			{
				printf("%d\n", K - i + 1);
				return 0;
			}
		}
	}
	return 0;
}