def f(n)
@count = 0
seq = [n]
(1..n).each do |k|
seq[1] = k
g(seq)
end
@count
end
def g(seq)
max = (seq[-1] - seq[-2]).abs - 1
@count += 1
# p [seq[0], seq[2..]]
p seq
(1..max).each do |k|
seq << k
g(seq)
seq.pop
end
end
p f(5)
def h(n)
seq = [n, 0]
@count = 0
g(seq)
@count
end
# h(4)