Statistics

Problem Statement for "TwoLotteryGames"

Problem Statement

Yesterday, when you were passing by the newsstand near your home, you saw an advertisement for lottery games. The advertisement said "Choose m different numbers between 1 and n, inclusive. We will also randomly pick m different numbers between 1 and n, inclusive, and if you have at least k numbers in common with us, you win!".

You want to know the probability of winning this lottery game. You are given three integers n, m, and k as described above. Return the probability of winning the game.

Definition

Class:
TwoLotteryGames
Method:
getHigherChanceGame
Parameters:
int, int, int
Returns:
double
Method signature:
double getHigherChanceGame(int n, int m, int k)
(be sure your method is public)

Notes

  • Your return must have relative or absolute error less than 1E-9.

Constraints

  • n will be between 2 and 8, inclusive.
  • m will be between 1 and n-1, inclusive.
  • k will be between 1 and m, inclusive.

Examples

  1. 3

    2

    1

    Returns: 1.0

    Here you and the organizers will choose 2 numbers among 3. It will be 4 numbers in total, so at least 1 number in your and their sets will repeat for sure.

  2. 3

    1

    1

    Returns: 0.3333333333333333

    Now you and the organizers will choose 1 number. These numbers will be the same with probability 1/3.

  3. 8

    2

    1

    Returns: 0.4642857142857143

  4. 8

    4

    2

    Returns: 0.7571428571428571

  5. 8

    3

    1

    Returns: 0.8214285714285714

  6. 2

    1

    1

    Returns: 0.5

  7. 2

    1

    1

    Returns: 0.5

  8. 3

    1

    1

    Returns: 0.3333333333333333

  9. 3

    2

    1

    Returns: 1.0

  10. 3

    2

    2

    Returns: 0.3333333333333333

  11. 4

    1

    1

    Returns: 0.25

  12. 4

    2

    1

    Returns: 0.8333333333333334

  13. 4

    2

    2

    Returns: 0.16666666666666666

  14. 4

    3

    1

    Returns: 1.0

  15. 4

    3

    2

    Returns: 1.0

  16. 4

    3

    3

    Returns: 0.25

  17. 5

    1

    1

    Returns: 0.2

  18. 5

    2

    1

    Returns: 0.7

  19. 5

    2

    2

    Returns: 0.1

  20. 5

    3

    1

    Returns: 1.0

  21. 5

    3

    2

    Returns: 0.7

  22. 5

    3

    3

    Returns: 0.1

  23. 5

    4

    1

    Returns: 1.0

  24. 5

    4

    2

    Returns: 1.0

  25. 5

    4

    3

    Returns: 1.0

  26. 5

    4

    4

    Returns: 0.2

  27. 6

    1

    1

    Returns: 0.16666666666666666

  28. 6

    2

    1

    Returns: 0.6

  29. 6

    2

    2

    Returns: 0.06666666666666667

  30. 6

    3

    1

    Returns: 0.95

  31. 6

    3

    2

    Returns: 0.5

  32. 6

    3

    3

    Returns: 0.05

  33. 6

    4

    1

    Returns: 1.0

  34. 6

    4

    2

    Returns: 1.0

  35. 6

    4

    3

    Returns: 0.6

  36. 6

    4

    4

    Returns: 0.06666666666666667

  37. 6

    5

    1

    Returns: 1.0

  38. 6

    5

    2

    Returns: 1.0

  39. 6

    5

    3

    Returns: 1.0

  40. 6

    5

    4

    Returns: 1.0

  41. 6

    5

    5

    Returns: 0.16666666666666666

  42. 7

    1

    1

    Returns: 0.14285714285714285

  43. 7

    2

    1

    Returns: 0.5238095238095238

  44. 7

    2

    2

    Returns: 0.047619047619047616

  45. 7

    3

    1

    Returns: 0.8857142857142857

  46. 7

    3

    2

    Returns: 0.37142857142857144

  47. 7

    3

    3

    Returns: 0.02857142857142857

  48. 7

    4

    1

    Returns: 1.0

  49. 7

    4

    2

    Returns: 0.8857142857142857

  50. 7

    4

    3

    Returns: 0.37142857142857144

  51. 7

    4

    4

    Returns: 0.02857142857142857

  52. 7

    5

    1

    Returns: 1.0

  53. 7

    5

    2

    Returns: 1.0

  54. 7

    5

    3

    Returns: 1.0

  55. 7

    5

    4

    Returns: 0.5238095238095238

  56. 7

    5

    5

    Returns: 0.047619047619047616

  57. 7

    6

    1

    Returns: 1.0

  58. 7

    6

    2

    Returns: 1.0

  59. 7

    6

    3

    Returns: 1.0

  60. 7

    6

    4

    Returns: 1.0

  61. 7

    6

    5

    Returns: 1.0

  62. 7

    6

    6

    Returns: 0.14285714285714285

  63. 8

    1

    1

    Returns: 0.125

  64. 8

    2

    1

    Returns: 0.4642857142857143

  65. 8

    2

    2

    Returns: 0.03571428571428571

  66. 8

    3

    1

    Returns: 0.8214285714285714

  67. 8

    3

    2

    Returns: 0.2857142857142857

  68. 8

    3

    3

    Returns: 0.017857142857142856

  69. 8

    4

    1

    Returns: 0.9857142857142858

  70. 8

    4

    2

    Returns: 0.7571428571428571

  71. 8

    4

    3

    Returns: 0.24285714285714285

  72. 8

    4

    4

    Returns: 0.014285714285714285

  73. 8

    5

    1

    Returns: 1.0

  74. 8

    5

    2

    Returns: 1.0

  75. 8

    5

    3

    Returns: 0.8214285714285714

  76. 8

    5

    4

    Returns: 0.2857142857142857

  77. 8

    5

    5

    Returns: 0.017857142857142856

  78. 8

    6

    1

    Returns: 1.0

  79. 8

    6

    2

    Returns: 1.0

  80. 8

    6

    3

    Returns: 1.0

  81. 8

    6

    4

    Returns: 1.0

  82. 8

    6

    5

    Returns: 0.4642857142857143

  83. 8

    6

    6

    Returns: 0.03571428571428571

  84. 8

    7

    1

    Returns: 1.0

  85. 8

    7

    2

    Returns: 1.0

  86. 8

    7

    3

    Returns: 1.0

  87. 8

    7

    4

    Returns: 1.0

  88. 8

    7

    5

    Returns: 1.0

  89. 8

    7

    6

    Returns: 1.0

  90. 8

    7

    7

    Returns: 0.125


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: