Statistics

Problem Statement for "PrimeStatistics"

Problem Statement

It is a known fact that prime numbers are not evenly distributed. For example, almost all primes give the remainder 1 or 5 when divided by 6 (the only two exceptions are the primes 2 and 3). Your task is to write a program that will help explore this phenomenon.

You will be given three integers: lowerBound, upperBound and modulo. Return the remainder that occurs most often when we take all primes in the set { lowerBound, lowerBound+1, ... upperBound } and divide each of them by modulo. If there are multiple remainders that occur most often, return the smallest of them.

Definition

Class:
PrimeStatistics
Method:
mostCommonRemainder
Parameters:
int, int, int
Returns:
int
Method signature:
int mostCommonRemainder(int lowerBound, int upperBound, int modulo)
(be sure your method is public)

Notes

  • A prime number is a positive integer that has exactly two divisors. The first few primes are: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, ...

Constraints

  • lowerBound and upperBound are between 1 and 200,000 inclusive.
  • lowerBound is less than or equal to upperBound.
  • modulo is between 2 and 1000 inclusive.

Examples

  1. 3

    14

    5

    Returns: 3

    The primes in this interval are: 3, 5, 7, 11 and 13. Their remainders when divided by 5 are 3, 0, 2, 1 and 3, respectively. Thus the most common remainder is 3.

  2. 3

    33

    1000

    Returns: 3

    In this case each of the primes gives a different remainder. According to the tie-breaking rule the smallest of them is returned.

  3. 25

    27

    17

    Returns: 0

    There are no primes in this interval. Each remainder occurs zero times, thus each of them is the most common remainder. Zero is the smallest possible remainder. Thus, according to the tie-breaking rule, zero is returned.

  4. 1

    200000

    2

    Returns: 1

    Almost all primes are odd; the only even prime is 2.

  5. 1

    1000

    6

    Returns: 5

    As mentioned in the introduction, almost all primes give the remainder 1 or 5 modulo 6. In this interval there are more primes of the second kind.

  6. 1

    1

    2

    Returns: 0

  7. 2

    2

    2

    Returns: 0

  8. 3

    3

    2

    Returns: 1

  9. 4

    4

    2

    Returns: 0

  10. 1

    1

    10

    Returns: 0

  11. 2

    2

    10

    Returns: 2

  12. 3

    3

    10

    Returns: 3

  13. 4

    4

    10

    Returns: 0

  14. 1

    4

    7

    Returns: 2

  15. 49

    49

    2

    Returns: 0

  16. 342

    344

    13

    Returns: 0

  17. 117649

    117650

    4

    Returns: 0

  18. 196248

    196250

    17

    Returns: 0

  19. 2967

    2991

    6

    Returns: 1

  20. 2963

    2991

    6

    Returns: 5

  21. 1

    200000

    2

    Returns: 1

  22. 1

    200000

    3

    Returns: 2

  23. 1

    200000

    997

    Returns: 305

  24. 1

    200000

    1000

    Returns: 13

  25. 47

    193252

    843

    Returns: 721

  26. 147

    192252

    743

    Returns: 168

  27. 1

    1

    3

    Returns: 0

  28. 1

    200000

    3

    Returns: 2

  29. 1

    2

    3

    Returns: 2

  30. 1

    1

    2

    Returns: 0

  31. 1

    2

    7

    Returns: 2

  32. 1

    3

    2

    Returns: 0

  33. 1

    1

    10

    Returns: 0

  34. 1

    1

    4

    Returns: 0

  35. 1

    1

    5

    Returns: 0

  36. 1

    200000

    2

    Returns: 1

  37. 3

    14

    5

    Returns: 3

  38. 1

    2

    4

    Returns: 2

  39. 1

    200000

    798

    Returns: 433

  40. 1

    2

    100

    Returns: 2

  41. 200000

    200000

    1000

    Returns: 0

  42. 2

    2

    3

    Returns: 2

  43. 5

    5

    2

    Returns: 1

  44. 195473

    198059

    506

    Returns: 41

  45. 1

    200000

    5

    Returns: 3

  46. 3

    33

    1000

    Returns: 3

  47. 2

    7

    5

    Returns: 2

  48. 199967

    199999

    3

    Returns: 1

  49. 2

    2

    10

    Returns: 2

  50. 2

    2

    4

    Returns: 2

  51. 1

    1000

    1000

    Returns: 2

  52. 17

    17

    3

    Returns: 2

  53. 1

    200000

    1000

    Returns: 13

  54. 1

    14

    5

    Returns: 2

  55. 95

    105

    2

    Returns: 1

  56. 1

    7

    3

    Returns: 2

  57. 1

    200000

    19

    Returns: 4

  58. 5

    7

    6

    Returns: 1

  59. 1

    1

    7

    Returns: 0

  60. 1

    200000

    999

    Returns: 727

  61. 4

    189087

    875

    Returns: 761

  62. 7

    29

    3

    Returns: 2

  63. 2

    3

    2

    Returns: 0

  64. 20001

    100000

    5

    Returns: 2

  65. 2

    5

    6

    Returns: 2

  66. 199931

    199931

    10

    Returns: 1

  67. 13

    13

    20

    Returns: 13

  68. 1

    200000

    6

    Returns: 5

  69. 2

    2

    1000

    Returns: 2

  70. 1

    200000

    7

    Returns: 5

  71. 1

    2

    2

    Returns: 0

  72. 2

    1000

    17

    Returns: 11

  73. 14

    15

    100

    Returns: 0

  74. 17

    17

    5

    Returns: 2

  75. 3

    17

    5

    Returns: 2

  76. 2

    5

    4

    Returns: 1

  77. 1

    200000

    918

    Returns: 193

  78. 121

    121

    2

    Returns: 0

  79. 1

    3

    7

    Returns: 2

  80. 2

    4

    2

    Returns: 0

  81. 1

    17

    991

    Returns: 2

  82. 196249

    196249

    2

    Returns: 0

  83. 2

    5

    5

    Returns: 0

  84. 5

    14

    3

    Returns: 1

  85. 23

    37

    3

    Returns: 1

  86. 9

    200

    10

    Returns: 3

  87. 2

    9

    3

    Returns: 2

  88. 1

    200000

    997

    Returns: 305

  89. 5

    7

    7

    Returns: 0

  90. 2

    2

    5

    Returns: 2

  91. 1

    1

    3

    Returns: 0

  92. 1

    200000

    3

    Returns: 2

  93. 1

    2

    3

    Returns: 2

  94. 1

    1

    2

    Returns: 0

  95. 1

    2

    7

    Returns: 2

  96. 1

    3

    2

    Returns: 0

  97. 1

    1

    10

    Returns: 0

  98. 1

    1

    4

    Returns: 0

  99. 1

    1

    5

    Returns: 0

  100. 1

    200000

    2

    Returns: 1

  101. 3

    14

    5

    Returns: 3

  102. 1

    2

    4

    Returns: 2

  103. 1

    200000

    798

    Returns: 433

  104. 1

    2

    100

    Returns: 2

  105. 200000

    200000

    1000

    Returns: 0

  106. 2

    2

    3

    Returns: 2

  107. 5

    5

    2

    Returns: 1

  108. 195473

    198059

    506

    Returns: 41

  109. 1

    200000

    5

    Returns: 3

  110. 3

    33

    1000

    Returns: 3

  111. 2

    7

    5

    Returns: 2

  112. 199967

    199999

    3

    Returns: 1

  113. 2

    2

    10

    Returns: 2

  114. 2

    2

    4

    Returns: 2

  115. 1

    1000

    1000

    Returns: 2

  116. 17

    17

    3

    Returns: 2

  117. 1

    200000

    1000

    Returns: 13

  118. 1

    14

    5

    Returns: 2

  119. 95

    105

    2

    Returns: 1

  120. 1

    7

    3

    Returns: 2

  121. 1

    200000

    19

    Returns: 4

  122. 5

    7

    6

    Returns: 1

  123. 1

    1

    7

    Returns: 0

  124. 1

    200000

    999

    Returns: 727

  125. 4

    189087

    875

    Returns: 761

  126. 7

    29

    3

    Returns: 2

  127. 2

    3

    2

    Returns: 0

  128. 20001

    100000

    5

    Returns: 2

  129. 2

    5

    6

    Returns: 2

  130. 199931

    199931

    10

    Returns: 1

  131. 13

    13

    20

    Returns: 13

  132. 1

    200000

    6

    Returns: 5

  133. 2

    2

    1000

    Returns: 2

  134. 1

    200000

    7

    Returns: 5

  135. 1

    2

    2

    Returns: 0

  136. 2

    1000

    17

    Returns: 11

  137. 14

    15

    100

    Returns: 0

  138. 17

    17

    5

    Returns: 2

  139. 3

    17

    5

    Returns: 2

  140. 2

    5

    4

    Returns: 1

  141. 1

    200000

    918

    Returns: 193

  142. 121

    121

    2

    Returns: 0

  143. 1

    3

    7

    Returns: 2

  144. 2

    4

    2

    Returns: 0

  145. 1

    17

    991

    Returns: 2

  146. 196249

    196249

    2

    Returns: 0

  147. 2

    5

    5

    Returns: 0

  148. 5

    14

    3

    Returns: 1

  149. 23

    37

    3

    Returns: 1

  150. 9

    200

    10

    Returns: 3

  151. 2

    9

    3

    Returns: 2

  152. 1

    200000

    997

    Returns: 305

  153. 5

    7

    7

    Returns: 0

  154. 2

    2

    5

    Returns: 2


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: