from fractions import Fraction
from itertools import product
piles = [set(), {Fraction(-2),Fraction(2)}]
operators = [
lambda a,b: a+b,
lambda a,b: a-b,
lambda a,b: b-a,
lambda a,b: -(a+b),
lambda a,b: a*b,
lambda a,b: -a*b,
lambda a,b: a/b,
lambda a,b: b/a,
lambda a,b: -a/b,
lambda a,b: -b/a
]
for n in range(2,11):
pile = set()
for k in range(1,n//2+1):
a_pile = piles[k]
b_pile = piles[n-k]
for op,a,b in product(operators,(a for a in a_pile if a >= 0),(b for b in b_pile if b >= 0)):
try:
pile.add(op(a,b))
except:
pass
# print(str(n) + ': ' + ' '.join(str(x) for x in sorted(pile)))
piles.append(pile)
for p in piles:
print(len(p))
ZnJvbSBmcmFjdGlvbnMgaW1wb3J0IEZyYWN0aW9uCmZyb20gaXRlcnRvb2xzIGltcG9ydCBwcm9kdWN0CgpwaWxlcyA9IFtzZXQoKSwge0ZyYWN0aW9uKC0yKSxGcmFjdGlvbigyKX1dCgpvcGVyYXRvcnMgPSBbCglsYW1iZGEgYSxiOiBhK2IsCglsYW1iZGEgYSxiOiBhLWIsCglsYW1iZGEgYSxiOiBiLWEsCglsYW1iZGEgYSxiOiAtKGErYiksCglsYW1iZGEgYSxiOiBhKmIsCglsYW1iZGEgYSxiOiAtYSpiLAoJbGFtYmRhIGEsYjogYS9iLAoJbGFtYmRhIGEsYjogYi9hLAoJbGFtYmRhIGEsYjogLWEvYiwKCWxhbWJkYSBhLGI6IC1iL2EKXQoKZm9yIG4gaW4gcmFuZ2UoMiwxMSk6CglwaWxlID0gc2V0KCkKCWZvciBrIGluIHJhbmdlKDEsbi8vMisxKToKCQlhX3BpbGUgPSBwaWxlc1trXQoJCWJfcGlsZSA9IHBpbGVzW24ta10KCQlmb3Igb3AsYSxiIGluIHByb2R1Y3Qob3BlcmF0b3JzLChhIGZvciBhIGluIGFfcGlsZSBpZiBhID49IDApLChiIGZvciBiIGluIGJfcGlsZSBpZiBiID49IDApKToKCQkJdHJ5OgoJCQkJcGlsZS5hZGQob3AoYSxiKSkKCQkJZXhjZXB0OgoJCQkJcGFzcwojCXByaW50KHN0cihuKSArICc6ICcgKyAnICcuam9pbihzdHIoeCkgZm9yIHggaW4gc29ydGVkKHBpbGUpKSkKCXBpbGVzLmFwcGVuZChwaWxlKQoKZm9yIHAgaW4gcGlsZXM6CglwcmludChsZW4ocCkp