fork download
  1. f=lambda n,k=1:n and-~f(n-(k+(k&-k)&k>0),k+1)
  2.  
  3. print map(f, range(1, 21))
Success #stdin #stdout 0s 9024KB
stdin
Standard input is empty
stdout
[5, 9, 10, 11, 13, 17, 18, 19, 20, 21, 22, 23, 25, 26, 27, 29, 33, 34, 35, 36]