
# grayTransStack.py

# generate Gray code transition sequence T_n with a stack
# Fig. 49.7 
# input: 3  or  4

n = int(input("n=? "))

stk = [i for i in range(n, 0, -1)]
while stk != []:
  t = stk.pop()
  print(t, end = ' ')
  for i in range(t-1, 0, -1):
    stk.append(i)
print()