Vanya got n cubes. He decided to build a pyramid from them. Vanya wants to build the pyramid as follows: the top level of the pyramid must consist of 1 cube, the second level must consist of 1 + 2 = 3 cubes, the third level must have 1 + 2 + 3 = 6 cubes, and so on. Thus, the i-th level of the pyramid must have 1 + 2 + ... + (i - 1) + i cubes.

Vanya wants to know what is the maximum height of the pyramid that he can make using the given cubes.

Input

The first line contains integer n (1 ≤ n ≤ 104) — the number of cubes given to Vanya.

Output

Print the maximum possible height of the pyramid in the single line.

Examples

Input

1


Output

1


Input

25


Output

4

Note

Illustration to the second sample: 

<image>
# 8 5
#   10 9 8 7 7 7 5 5

##x = 0                                                 # NOT COMPETED PROBEM==NEXT ROUND                 #  1+2*3=7
##y=[]                                                  # NOT COMPETED PROBEM==NEXT ROUND                 #  1*(2+3)=5
##rks, pos = map(int, input().split())                  # NOT COMPETED PROBEM==NEXT ROUND                 #  1*2*3=6
##for _ in range(rks):                                  # NOT COMPETED PROBEM==NEXT ROUND                 #  (1+2)*3=9
##    a = int(input())                                  # NOT COMPETED PROBEM==NEXT ROUND
##    y.append(a)                                       # NOT COMPETED PROBEM==NEXT ROUND
##                                                      # NOT COMPETED PROBEM==NEXT ROUND
##while y[pos] >= y:
##    x += 1
##print(x)
#  floor      2.9==2
import pdb

# pdb.set_trace()

#print("YNEOS"[(-2)**int(input())<5::2])


c=0
c1=0
x=int(input())
for i in range(1,x+1):
    c1+=i
    if x>=c1:
        x-=c1
        c+=1
    if x<c1:
        break
print(c)


















