Statistics

Problem Statement for "GridPointsOnCircle"

Problem Statement

You will be given rSquare, the square of the radius of a circle. You are to return the number of lattice points (points with integer coordinates) that lie on the circumference of a circle with this radius centered at the origin of the (cartesian) coordinate system.

Definition

Class:
GridPointsOnCircle
Method:
countPoints
Parameters:
int
Returns:
int
Method signature:
int countPoints(int rSquare)
(be sure your method is public)

Constraints

  • rSquare will be between 1 and 2,000,000,000, inclusive.

Examples

  1. 1

    Returns: 4

    A circle with radius 1 centered at the origin goes through 4 lattice points: (1,0), (0,1), (-1,0) and (0,-1).

  2. 25

    Returns: 12

    A circle with radius 5 goes through the points (+/-3, +/-4), (+/-4, +/-3), (0, +/-5) and (+/-5, 0) (12 points).

  3. 3

    Returns: 0

    No lattice point is at distance sqrt(3) from the origin.

  4. 12

    Returns: 0

  5. 44

    Returns: 0

  6. 93

    Returns: 0

  7. 10227

    Returns: 0

  8. 2

    Returns: 4

  9. 4

    Returns: 4

  10. 16

    Returns: 4

  11. 18

    Returns: 4

  12. 5

    Returns: 8

  13. 10

    Returns: 8

  14. 116

    Returns: 8

  15. 738

    Returns: 8

  16. 25

    Returns: 12

  17. 50

    Returns: 12

  18. 169

    Returns: 12

  19. 289

    Returns: 12

  20. 365

    Returns: 16

  21. 14330

    Returns: 16

  22. 52273

    Returns: 16

  23. 625

    Returns: 20

  24. 11250

    Returns: 20

  25. 1025

    Returns: 24

  26. 3757

    Returns: 24

  27. 39182909

    Returns: 24

  28. 9685

    Returns: 32

  29. 718765

    Returns: 32

  30. 204864885

    Returns: 32

  31. 4225

    Returns: 36

  32. 900601

    Returns: 36

  33. 152500

    Returns: 40

  34. 3338125

    Returns: 40

  35. 432225

    Returns: 48

  36. 112350825

    Returns: 48

  37. 924545

    Returns: 64

  38. 542249245

    Returns: 64

  39. 912925

    Returns: 72

  40. 23539050

    Returns: 72

  41. 1384953986

    Returns: 96

  42. 1054357525

    Returns: 96

  43. 905656250

    Returns: 112

  44. 1834007305

    Returns: 128

  45. 835420885

    Returns: 128

  46. 108561700

    Returns: 144

  47. 795630625

    Returns: 160

  48. 804594785

    Returns: 192

  49. 1849385800

    Returns: 192

  50. 1849385799

    Returns: 0

  51. 1849385801

    Returns: 32

  52. 2000000000

    Returns: 40

  53. 1999967840

    Returns: 0

  54. 1999967841

    Returns: 12

  55. 1999967842

    Returns: 8

  56. 2000000000

    Returns: 40

  57. 1999967841

    Returns: 12

  58. 1800000000

    Returns: 36

  59. 2000000

    Returns: 28

  60. 50

    Returns: 12

  61. 200000000

    Returns: 36

  62. 625

    Returns: 20

  63. 1999999999

    Returns: 0

  64. 125

    Returns: 16

  65. 1999999924

    Returns: 64

  66. 1650390625

    Returns: 132

  67. 1

    Returns: 4

  68. 25

    Returns: 12

  69. 1999999882

    Returns: 32

  70. 123454321

    Returns: 12

  71. 500000000

    Returns: 40

  72. 25000000

    Returns: 36


This problem statement is the exclusive and proprietary property of TopCoder, Inc. Any unauthorized use or reproduction of this information without the prior written consent of TopCoder, Inc. is strictly prohibited. (c)2024, TopCoder, Inc. All rights reserved.
This problem was used for: