Statistics

Problem Statement for "SimpleGuess"

Problem Statement

A cat and a rabbit are playing a simple number guessing game. The cat chose two different positive integers X and Y. He then told the rabbit several numbers. One of those numbers was X + Y and another was X - Y. The others were simply made up.

The rabbit thinks the cat prefers large numbers. Given a int[] hints containing the numbers the cat told the rabbit, return the largest possible value of X * Y.

Definition

Class:
SimpleGuess
Method:
getMaximum
Parameters:
int[]
Returns:
int
Method signature:
int getMaximum(int[] hints)
(be sure your method is public)

Constraints

  • hints will contain between 2 and 50 elements, inclusive.
  • Each element of hints will be between 1 and 100, inclusive.
  • All elements of hints will be distinct.
  • There will exist at least one pair of positive integers (X, Y) such that both X + Y and X - Y are elements of hints.

Examples

  1. { 1, 4, 5 }

    Returns: 6

    The rabbit can determine that (X, Y) = (3, 2).

  2. { 1, 4, 5, 8 }

    Returns: 12

    Possible pairs (X, Y) are (3, 2) and (6, 2). The values of X * Y are 6 and 12, respectively, and the largest is 12.

  3. { 9, 8, 7, 6, 5, 4, 3, 2, 1 }

    Returns: 20

  4. { 2, 100 }

    Returns: 2499

  5. { 50, 58, 47, 57, 40 }

    Returns: 441

  6. { 1, 3 }

    Returns: 2

  7. { 3, 1 }

    Returns: 2

  8. { 1, 99 }

    Returns: 2450

  9. { 99, 1 }

    Returns: 2450

  10. { 97, 99 }

    Returns: 98

  11. { 99, 97 }

    Returns: 98

  12. { 2, 4 }

    Returns: 3

  13. { 4, 2 }

    Returns: 3

  14. { 100, 2 }

    Returns: 2499

  15. { 98, 100 }

    Returns: 99

  16. { 100, 98 }

    Returns: 99

  17. { 4, 89, 12, 76, 91, 80 }

    Returns: 1596

  18. { 2, 6, 5, 11, 9, 10, 4, 7 }

    Returns: 24

  19. { 48, 12, 30, 39, 6, 14, 11, 50, 16, 20, 49, 24, 22, 8, 7, 36, 9, 15, 46, 4, 42, 28, 5, 17, 29, 27, 26, 45, 34, 21, 33, 18, 2, 25, 41, 10, 35, 13, 3, 43, 40, 44, 32, 1, 19, 37, 47, 38, 31, 23 }

    Returns: 624

  20. { 100, 56, 59, 91, 60, 99, 67, 71, 95, 64, 90, 58, 52, 65, 69, 85, 94, 80, 92, 81, 79, 63, 89, 76, 77, 98, 62, 87, 73, 86, 82, 88, 83, 75, 61, 66, 57, 53, 84, 74, 93, 51, 78, 72, 97, 55, 70, 68, 96, 54 }

    Returns: 1824

  21. { 77, 61, 21, 13, 81, 69, 17, 95, 83, 39, 3, 75, 91, 99, 57, 25, 49, 97, 19, 33, 11, 37, 51, 89, 41, 85, 65, 45, 71, 59, 1, 43, 15, 67, 35, 5, 79, 93, 87, 7, 47, 73, 23, 53, 55, 29, 27, 63, 31, 9 }

    Returns: 2450

  22. { 82, 88, 38, 16, 54, 6, 2, 94, 84, 56, 34, 72, 92, 4, 66, 76, 100, 14, 60, 48, 90, 50, 74, 70, 18, 44, 24, 46, 68, 8, 40, 26, 32, 10, 42, 96, 12, 62, 22, 80, 78, 30, 86, 58, 52, 36, 20, 98, 28, 64 }

    Returns: 2499

  23. { 1, 3 }

    Returns: 2

  24. { 1, 2, 3 }

    Returns: 2

  25. { 2, 4 }

    Returns: 3

  26. { 1, 2, 4 }

    Returns: 3

  27. { 1, 3, 4 }

    Returns: 2

  28. { 2, 3, 4 }

    Returns: 3

  29. { 1, 2, 3, 4 }

    Returns: 3

  30. { 1, 5 }

    Returns: 6

  31. { 1, 2, 5 }

    Returns: 6

  32. { 3, 5 }

    Returns: 4

  33. { 1, 3, 5 }

    Returns: 6

  34. { 2, 3, 5 }

    Returns: 4

  35. { 1, 2, 3, 5 }

    Returns: 6

  36. { 1, 4, 5 }

    Returns: 6

  37. { 2, 4, 5 }

    Returns: 3

  38. { 1, 2, 4, 5 }

    Returns: 6

  39. { 3, 4, 5 }

    Returns: 4

  40. { 1, 3, 4, 5 }

    Returns: 6

  41. { 2, 3, 4, 5 }

    Returns: 4

  42. { 1, 2, 3, 4, 5 }

    Returns: 6

  43. { 2, 6 }

    Returns: 8

  44. { 1, 2, 6 }

    Returns: 8

  45. { 1, 3, 6 }

    Returns: 2

  46. { 2, 3, 6 }

    Returns: 8

  47. { 1, 2, 3, 6 }

    Returns: 8

  48. { 4, 6 }

    Returns: 5

  49. { 1, 4, 6 }

    Returns: 5

  50. { 2, 4, 6 }

    Returns: 8

  51. { 1, 2, 4, 6 }

    Returns: 8

  52. { 3, 4, 6 }

    Returns: 5

  53. { 1, 3, 4, 6 }

    Returns: 5

  54. { 2, 3, 4, 6 }

    Returns: 8

  55. { 1, 2, 3, 4, 6 }

    Returns: 8

  56. { 1, 5, 6 }

    Returns: 6

  57. { 2, 5, 6 }

    Returns: 8

  58. { 1, 2, 5, 6 }

    Returns: 8

  59. { 3, 5, 6 }

    Returns: 4

  60. { 1, 3, 5, 6 }

    Returns: 6

  61. { 2, 3, 5, 6 }

    Returns: 8

  62. { 1, 2, 3, 5, 6 }

    Returns: 8

  63. { 4, 5, 6 }

    Returns: 5

  64. { 1, 4, 5, 6 }

    Returns: 6

  65. { 2, 4, 5, 6 }

    Returns: 8

  66. { 1, 2, 4, 5, 6 }

    Returns: 8

  67. { 3, 4, 5, 6 }

    Returns: 5

  68. { 1, 3, 4, 5, 6 }

    Returns: 6

  69. { 2, 3, 4, 5, 6 }

    Returns: 8

  70. { 1, 2, 3, 4, 5, 6 }

    Returns: 8

  71. { 14, 92, 85, 58, 65, 69, 73, 47, 76, 83, 61, 49, 64, 55, 43, 93, 59, 86, 32, 68, 77, 75, 95, 50, 72, 97, 30, 71, 67, 89, 41 }

    Returns: 2067

  72. { 51, 10, 35, 47, 43, 63, 14, 59, 57, 77, 12, 81, 8, 67, 37, 33, 69, 31, 91 }

    Returns: 1830

  73. { 68, 33, 60, 25, 11, 62, 46, 21, 41, 32, 37, 70, 42, 36, 45, 51, 50, 23, 30, 19, 38, 74, 56, 40, 66, 44, 72, 64, 48, 52, 58, 27, 54, 7, 34, 28, 76 }

    Returns: 1248

  74. { 30, 92, 80, 36, 44, 7, 46, 88, 32, 5, 86, 82, 54, 56, 76, 78, 15, 3, 60, 9, 90, 13, 38, 68, 72, 34, 58, 48 }

    Returns: 1891

  75. { 15, 83, 28, 19, 49, 77, 33, 65, 17, 71, 35, 45, 37, 67, 23, 56, 81, 75, 51, 43, 73, 41, 31, 79, 53, 63, 57, 47, 69, 39, 21, 54, 27, 61 }

    Returns: 1666

  76. { 41, 62, 45, 56, 58, 60, 39, 52, 64 }

    Returns: 348

  77. { 68, 66, 60, 58, 42, 40, 34, 32, 28, 24, 13, 11, 7, 5 }

    Returns: 1012

  78. { 9, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 28, 29, 30, 34, 36, 38, 39, 40, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82 }

    Returns: 1617

  79. { 15, 17, 19, 21, 23, 29, 31, 33, 37, 39, 43, 47, 48, 49, 50, 52, 54, 55, 56, 57, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 75, 77, 81, 83, 85, 87, 89, 93, 95, 97 }

    Returns: 2296

  80. { 7, 26, 82, 70, 76, 92, 4, 98, 18, 84, 40, 30, 80, 52, 66, 42, 5, 62, 46, 10, 86, 72, 68, 28, 48, 60, 44, 54, 74, 12, 20, 16 }

    Returns: 2397

  81. { 1, 5, 27, 52, 53, 54, 56, 64, 68, 70, 72, 76, 78, 80, 81, 82, 86, 88, 94, 96, 98 }

    Returns: 1725

  82. { 9, 28, 22, 16, 50, 11, 30, 5, 20, 3, 32, 15, 8, 54 }

    Returns: 713

  83. { 77, 85, 87, 79, 75, 36, 91, 83, 89, 93, 95, 81, 73, 97 }

    Returns: 1020

  84. { 60, 68, 65, 80, 84, 78, 31, 58, 96, 51, 47, 56, 88, 11, 61, 86, 70, 25, 13, 35, 82, 50, 98 }

    Returns: 1776

  85. { 7, 39, 15, 9, 35, 29, 21, 13, 19, 31, 82, 27, 25, 37, 33, 11 }

    Returns: 368

  86. { 18, 68, 62, 46, 60, 42, 48, 44, 36, 24, 30, 28, 32, 56, 40, 64, 20, 58, 34, 22, 66, 26, 52, 54, 38, 50 }

    Returns: 1075

  87. { 9, 5, 18, 7, 10, 16 }

    Returns: 56

  88. { 15, 17, 19, 21, 23, 25, 27, 29, 30, 31, 32, 33, 35, 36, 41, 42, 43, 45, 49, 51, 55, 57, 59, 61, 63, 65, 67, 71, 73, 77, 79, 81, 83, 85, 87, 89 }

    Returns: 1924

  89. {2, 6, 11 }

    Returns: 8

  90. {1, 3, 14 }

    Returns: 2

  91. {4, 2, 9 }

    Returns: 3

  92. {1, 3, 20 }

    Returns: 2

  93. {1, 100, 5 }

    Returns: 6

  94. {1, 4, 5 }

    Returns: 6

  95. {100, 80, 3 }

    Returns: 900

  96. {1, 3, 4 }

    Returns: 2

  97. {2, 98, 99 }

    Returns: 2400

  98. {98, 51, 3, 1 }

    Returns: 650

  99. {5, 1 }

    Returns: 6

  100. {45, 8, 43 }

    Returns: 44

  101. {11, 8, 2 }

    Returns: 15

  102. {1, 6, 100 }

    Returns: 2491

  103. {12, 7, 10, 1 }

    Returns: 12

  104. {100, 1, 3 }

    Returns: 2

  105. {1, 2, 14 }

    Returns: 48

  106. {2, 4, 7 }

    Returns: 3

  107. {1, 5, 8 }

    Returns: 6

  108. {50, 58, 47, 57, 40 }

    Returns: 441

  109. {10, 2, 1 }

    Returns: 24

  110. {1, 4, 5, 8 }

    Returns: 12

  111. {1, 4, 5, 66 }

    Returns: 1085

  112. {1, 3, 8 }

    Returns: 2

  113. {100, 3, 1 }

    Returns: 2

  114. {1, 2, 3, 4, 5, 6, 10, 50 }

    Returns: 624

  115. {2, 4, 9 }

    Returns: 3

  116. {1, 5, 10 }

    Returns: 6

  117. {100, 99, 1 }

    Returns: 2450

  118. {1, 5, 100 }

    Returns: 6

  119. {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50 }

    Returns: 624

  120. {1, 3, 100 }

    Returns: 2

  121. {1, 4, 6 }

    Returns: 5

  122. {1, 6, 8 }

    Returns: 7

  123. {3, 7, 10 }

    Returns: 10

  124. {2, 15, 52, 53 }

    Returns: 675

  125. {4, 7, 13 }

    Returns: 30

  126. {2, 7, 4 }

    Returns: 3

  127. {2, 100 }

    Returns: 2499

  128. {9, 8, 2 }

    Returns: 15

  129. {41, 8, 2 }

    Returns: 15

  130. {3, 16, 5 }

    Returns: 4

  131. {1, 3, 6 }

    Returns: 2

  132. {2, 3, 8, 99 }

    Returns: 2448

  133. {8, 100, 2, 1 }

    Returns: 2499


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: