ternary.py 356 B

1234567891011121314151617181920
  1. n = int(input())
  2. s = n // abs(n) if n else 1
  3. n = abs(n)
  4. ks = []
  5. mod = 0
  6. while n:
  7. q, r = n // 3, n % 3
  8. if (r + mod) > 1:
  9. ks.insert(0, s*(r + mod - 3))
  10. mod = 1
  11. else:
  12. ks.insert(0, s*(r + mod))
  13. mod = 0
  14. n = q
  15. if mod:
  16. ks.insert(0, s)
  17. if not ks:
  18. ks = [0]
  19. print("".join(["T", "0", "1"][i + 1] for i in ks))