from math import gcd # オイラーのトーシェント関数 φ(x) を求める def euler_totient(n): result = n i = 2 while i * i <= n: if n % i == 0: while n % i == 0: n //= i result -= result // i i += 1 if n > 1: result -= result // n return result # 高速べき乗法 (繰り返し二乗法) def mod_pow(base, exp, mod): result = 1 while exp > 0: if exp % 2 == 1: result = (result * base) % mod base = (base * base) % mod exp //= 2 return result # 約数を列挙 def divisors(n): divs = [] for i in range(1, int(n**0.5) + 1): if n % i == 0: divs.append(i) if i != n // i: divs.append(n // i) return sorted(divs) # 循環節の長さを求める def cycle_length(x): if x % 2 == 0 or x % 5 == 0: return 0 # 有限小数の場合 phi_x = euler_totient(x) for d in divisors(phi_x): if mod_pow(10, d, x) == 1: return d return phi_x # 最悪でも φ(x) に収束 N=int(input()) print(cycle_length(N))