b.LazyLoading.py 704 B

123456789101112131415161718192021222324252627282930
  1. import numpy as np
  2. def solve(N, W):
  3. W=sorted(W)
  4. res=0
  5. #print("Start:", W)
  6. while len(W) > 0:
  7. last=W[-1]
  8. del W[-1]
  9. #print("Removed last:", W)
  10. div=int(np.ceil(50/last))
  11. #print("50/{0}={1}".format(last,div))
  12. if len(W) < div-1:
  13. return res
  14. del W[:div-1]
  15. #print("Removed", div-1, "first")
  16. res+=1
  17. return res
  18. if __name__ == "__main__":
  19. import fileinput
  20. f = fileinput.input()
  21. T = int(f.readline())
  22. for case in range(1, T+1):
  23. N = int(f.readline())
  24. W = [int(f.readline()) for x in range(N)]
  25. solution = solve(N, W)
  26. print("Case #{0}: {1}".format(case, solution))