fork download
  1.  
  2. T = int(input())
  3.  
  4. for _ in range(T):
  5. n = int(input())
  6.  
  7. def Gauss(n):
  8. return(n*(3*n+1)//2)
  9. def busquedabinaria(n):
  10. if n < 2: return ""
  11. if n == 2:
  12. print(1)
  13. return ""
  14. return busquedabi(n,0,n)
  15. def busquedabi(n,ini,fin):
  16. m =((ini+fin)//2)
  17. if Gauss(m) == n:
  18. print(m)
  19. return ""
  20. if Gauss(m) > n: return busquedabi(n,ini,m)
  21. if Gauss(m) < n and Gauss(m+1) > n:
  22. print(m, end = " ")
  23. return busquedabinaria(n-Gauss(m))
  24.  
  25. else:
  26. return busquedabi(n,m,fin)
  27. print(busquedabinaria(n))
Success #stdin #stdout 0.03s 9812KB
stdin
3
1
2
1
stdout