n = int(input()) num = [] table = [True] * (n + 1) for i in range(2, n + 1): if not table[i]: continue k = i + i while k < n + 1: table[k] = False k += i num.append(i) dp = [-1] * 20001 dp[0] = 0 for prime in num: for i in range(n, 0, -1): if i - prime >= 0: if dp[i - prime] >= 0: dp[i] = max(dp[i], dp[i - prime] + 1) print(dp[n])