a.ProgressBar.py 928 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import numpy as np
  2. # From: http://stackoverflow.com/a/35178910
  3. def angle(x, y):
  4. a = np.array([50, 100, 0])
  5. b = np.array([50, 50, 0])
  6. c = np.array([x, y, 0])
  7. ba = a - b
  8. bc = c - b
  9. cosine_angle = np.dot(ba, bc) / (np.linalg.norm(ba) * np.linalg.norm(bc))
  10. angle = np.arccos(cosine_angle)
  11. return np.degrees(angle)
  12. def solve(S):
  13. p, x, y = S
  14. #print("p={0}, x={1}, y={2}".format(p, x, y))
  15. dist=np.sqrt((x-50)*(x-50)+(y-50)*(y-50))
  16. if dist > 50:
  17. return 'white'
  18. a=angle(x,y)
  19. if x < 50:
  20. a=360-a
  21. #print('Angle={0}'.format(a))
  22. if p >= 100*a/360:
  23. return 'black'
  24. return 'white'
  25. if __name__ == "__main__":
  26. import fileinput
  27. f = fileinput.input()
  28. T = int(f.readline())
  29. for case in range(1, T+1):
  30. S = [int(i) for i in f.readline().split()]
  31. solution = solve(S)
  32. print("Case #{0}: {1}".format(case, solution))