fork download
  1. #!/usr/bin/env python3
  2. from itertools import product
  3.  
  4. def format_polynom(*coeffs, vars=("", "x", "y")):
  5. return (
  6. "".join(
  7. # VVV rule #3 VVV rule #1 VVV rule #3 rule #5 VVV
  8. ("{:+}".format(c) if abs(c) != 1 or not v else "-" if c < 0 else "+") + v
  9. if c # rule #2
  10. else ""
  11. for c, v in zip(coeffs, vars)
  12. ).lstrip("+") # rule #4
  13. or "0" # rule #2
  14. )
  15.  
  16. for coeffs in product(range(-2, 3), repeat=3):
  17. print(*coeffs, "->", format_polynom(*coeffs))
  18.  
Success #stdin #stdout 0.04s 9532KB
stdin
Standard input is empty
stdout
-2 -2 -2 -> -2-2x-2y
-2 -2 -1 -> -2-2x-y
-2 -2 0 -> -2-2x
-2 -2 1 -> -2-2x+y
-2 -2 2 -> -2-2x+2y
-2 -1 -2 -> -2-x-2y
-2 -1 -1 -> -2-x-y
-2 -1 0 -> -2-x
-2 -1 1 -> -2-x+y
-2 -1 2 -> -2-x+2y
-2 0 -2 -> -2-2y
-2 0 -1 -> -2-y
-2 0 0 -> -2
-2 0 1 -> -2+y
-2 0 2 -> -2+2y
-2 1 -2 -> -2+x-2y
-2 1 -1 -> -2+x-y
-2 1 0 -> -2+x
-2 1 1 -> -2+x+y
-2 1 2 -> -2+x+2y
-2 2 -2 -> -2+2x-2y
-2 2 -1 -> -2+2x-y
-2 2 0 -> -2+2x
-2 2 1 -> -2+2x+y
-2 2 2 -> -2+2x+2y
-1 -2 -2 -> -1-2x-2y
-1 -2 -1 -> -1-2x-y
-1 -2 0 -> -1-2x
-1 -2 1 -> -1-2x+y
-1 -2 2 -> -1-2x+2y
-1 -1 -2 -> -1-x-2y
-1 -1 -1 -> -1-x-y
-1 -1 0 -> -1-x
-1 -1 1 -> -1-x+y
-1 -1 2 -> -1-x+2y
-1 0 -2 -> -1-2y
-1 0 -1 -> -1-y
-1 0 0 -> -1
-1 0 1 -> -1+y
-1 0 2 -> -1+2y
-1 1 -2 -> -1+x-2y
-1 1 -1 -> -1+x-y
-1 1 0 -> -1+x
-1 1 1 -> -1+x+y
-1 1 2 -> -1+x+2y
-1 2 -2 -> -1+2x-2y
-1 2 -1 -> -1+2x-y
-1 2 0 -> -1+2x
-1 2 1 -> -1+2x+y
-1 2 2 -> -1+2x+2y
0 -2 -2 -> -2x-2y
0 -2 -1 -> -2x-y
0 -2 0 -> -2x
0 -2 1 -> -2x+y
0 -2 2 -> -2x+2y
0 -1 -2 -> -x-2y
0 -1 -1 -> -x-y
0 -1 0 -> -x
0 -1 1 -> -x+y
0 -1 2 -> -x+2y
0 0 -2 -> -2y
0 0 -1 -> -y
0 0 0 -> 0
0 0 1 -> y
0 0 2 -> 2y
0 1 -2 -> x-2y
0 1 -1 -> x-y
0 1 0 -> x
0 1 1 -> x+y
0 1 2 -> x+2y
0 2 -2 -> 2x-2y
0 2 -1 -> 2x-y
0 2 0 -> 2x
0 2 1 -> 2x+y
0 2 2 -> 2x+2y
1 -2 -2 -> 1-2x-2y
1 -2 -1 -> 1-2x-y
1 -2 0 -> 1-2x
1 -2 1 -> 1-2x+y
1 -2 2 -> 1-2x+2y
1 -1 -2 -> 1-x-2y
1 -1 -1 -> 1-x-y
1 -1 0 -> 1-x
1 -1 1 -> 1-x+y
1 -1 2 -> 1-x+2y
1 0 -2 -> 1-2y
1 0 -1 -> 1-y
1 0 0 -> 1
1 0 1 -> 1+y
1 0 2 -> 1+2y
1 1 -2 -> 1+x-2y
1 1 -1 -> 1+x-y
1 1 0 -> 1+x
1 1 1 -> 1+x+y
1 1 2 -> 1+x+2y
1 2 -2 -> 1+2x-2y
1 2 -1 -> 1+2x-y
1 2 0 -> 1+2x
1 2 1 -> 1+2x+y
1 2 2 -> 1+2x+2y
2 -2 -2 -> 2-2x-2y
2 -2 -1 -> 2-2x-y
2 -2 0 -> 2-2x
2 -2 1 -> 2-2x+y
2 -2 2 -> 2-2x+2y
2 -1 -2 -> 2-x-2y
2 -1 -1 -> 2-x-y
2 -1 0 -> 2-x
2 -1 1 -> 2-x+y
2 -1 2 -> 2-x+2y
2 0 -2 -> 2-2y
2 0 -1 -> 2-y
2 0 0 -> 2
2 0 1 -> 2+y
2 0 2 -> 2+2y
2 1 -2 -> 2+x-2y
2 1 -1 -> 2+x-y
2 1 0 -> 2+x
2 1 1 -> 2+x+y
2 1 2 -> 2+x+2y
2 2 -2 -> 2+2x-2y
2 2 -1 -> 2+2x-y
2 2 0 -> 2+2x
2 2 1 -> 2+2x+y
2 2 2 -> 2+2x+2y