Quick actions

cmd+k|ctrl+k

Navigation

Languages

xiao ming counting

Snippet info

Language

Ruby

Visibility

public

Author

hyrious

Created

2020-03-15T08:29:42Z

Updated

2020-03-15T08:29:42Z


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)
INFO