Advertisement
Guest User

Untitled

a guest
Nov 21st, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.48 KB | None | 0 0
  1. n = int(input())
  2. # 1 + 4 + 9 + 16 ...n^2 = n(n+1)(2n+1)/6
  3. i = 1
  4. while i*(i+1)*(2*i+1)/6 < n:
  5. i += 1
  6. sector = i
  7. i -= 1
  8. num_in_sector = n - i*(i+1)*(2*i+1)/6
  9. k = 0
  10. while sector*k < num_in_sector:
  11. k += 1
  12. floor_in_sector = k
  13. if num_in_sector == sector*floor_in_sector:
  14. num_in_floor = sector
  15. else:
  16. num_in_floor = num_in_sector - sector*(floor_in_sector-1)
  17.  
  18. floor = floor_in_sector
  19. for l in range(sector):
  20. floor += l
  21. print(int(floor), int(num_in_floor))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement