import sys sys.setrecursionlimit(10 ** 6) def II(): return int(sys.stdin.readline()) def main(): n=II() max_k=4471 coin=[] for k in range(1,max_k+1): tmp=k*(k+1)//2 coin+=[tmp] if tmp==n: print(1) exit() for i in range(max_k): for j in range(i,max_k): if coin[i]+coin[j]==n: print(2) exit() print(3) main()