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(max_k,0,-1): coin+=[k*(k+1)//2] if coin==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()