fork download
  1. import sys, itertools
  2.  
  3. for n in range(1, 13):
  4. sys.stdout.write("{:3}:".format(n))
  5. for k in range(1, n + 1):
  6. r = set()
  7. for c in itertools.combinations(range(n), k):
  8. d = [0]*n
  9. for i, c1 in enumerate(c):
  10. for c2 in c[(i + 1):]:
  11. d[c2 - c1] += 1
  12. d[n + c1 - c2] += 1
  13. d = tuple(d)
  14. r.add(d)
  15. sys.stdout.write(" {:4}".format(len(r)))
  16. sys.stdout.write("\n")
Success #stdin #stdout 0.28s 10264KB
stdin
Standard input is empty
stdout
  1:    1
  2:    1    1
  3:    1    1    1
  4:    1    2    1    1
  5:    1    2    2    1    1
  6:    1    3    3    3    1    1
  7:    1    3    4    4    3    1    1
  8:    1    4    5    7    5    4    1    1
  9:    1    4    7   10   10    7    4    1    1
 10:    1    5    8   16   13   16    8    5    1    1
 11:    1    5   10   20   26   26   20   10    5    1    1
 12:    1    6   12   28   35   35   35   28   12    6    1    1