from collections import deque N = int(input()) INF = 10**18 dist = [INF]*(N+10) dist[1] = 0 q = deque() q.append(1) while q: now = q.popleft() cnt = 0 for i in range(20): if (1<= 1: if dist[now-cnt]==INF: dist[now-cnt] = dist[now]+1 q.append(now-cnt) if now+cnt <= N: if dist[now+cnt]==INF: dist[now+cnt] = dist[now]+1 q.append(now+cnt) if dist[N]==INF: print(-1) exit() print(dist[N]+1)