import sys

n = int(input())
count = 0
# 如果所需橙子数刚好为8的倍数
if n % 8 == 0:
    count = n // 8
    print(count)
else:
    # 优先购买8个橙子的袋子
    while n >= 8:
        n -= 8
        count += 1
	# 判断最后所缺橙子数是否为偶数,如果是奇数,则不能满足恰好购买n个橘子
    if n % 2 == 0:
        print(count + 1)
    else:
        print(-1)
		

所缺橙子数为偶数的情况,n的取值只有2、4、6。显然n=6的情况是最直接的,直接在购买一个装6个橙子的袋子就可以,故最小的袋子数为 count + 1 个。对于另外两种情况,只需找到让n加上最少的8使得,n为6的倍数就行。

当n=2时, 需要加上2个8,此时n=18,而18 / 6 = 3,故最少需要 count - 2 + 3 = count + 1

当n=4时, 需要加上1个8,此时n=12,而12 / 6 = 2,故最少需要 count - 1 + 2 = count + 1

终上所述,当所缺橙子数为偶数时,最少需要购买 count + 1 袋。