Statistics

Problem Statement for "DengklekTryingToSleep"

Problem Statement

Mr. Dengklek lives in the Kingdom of Ducks, where humans and ducks live together in peace and harmony. The ducks are numbered by distinct positive integers from A to B, inclusive, where A <= B.

Last night, Mr. Dengklek could not sleep, so he tried to count all the ducks in the kingdom. (It is known that counting ducks can help people to fall asleep.) When counting the ducks, Mr. Dengklek walked across an imaginary meadow and whenever he saw a new duck, he called out its number. He only called out actual duck numbers, i.e., numbers from A to B. He never called the same number twice. The numbers he called out are not necessarily in the numeric order.

You are given a int[] ducks. The elements of ducks are the numbers Mr. Dengklek called out when counting the ducks last night. It is possible that he missed some of the ducks. Obviously, the number of ducks he missed depends on the values A and B. The values of A and B are unknown to you. Compute and return the smallest possible number of ducks Mr. Dengklek might have missed.

Definition

Class:
DengklekTryingToSleep
Method:
minDucks
Parameters:
int[]
Returns:
int
Method signature:
int minDucks(int[] ducks)
(be sure your method is public)

Constraints

  • ducks will contain between 1 and 50 elements, inclusive.
  • Each element of ducks will be between 1 and 100, inclusive.
  • All element of ducks will be distinct.

Examples

  1. {5, 3, 2}

    Returns: 1

    If A=2 and B=5, the only duck Mr. Dengklek missed is the duck number 4.

  2. {58}

    Returns: 0

    If A=B=58, Mr. Dengklek did not miss any ducks.

  3. {9, 3, 6, 4}

    Returns: 3

    In this case, the smallest possible number of missed ducks is 3: the ducks with numbers 5, 7, and 8.

  4. {7, 4, 77, 47, 74, 44}

    Returns: 68

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

    Returns: 0

  6. {1}

    Returns: 0

  7. {1, 100}

    Returns: 98

  8. {100}

    Returns: 0

  9. {95, 35, 24, 43, 73, 38, 12, 41, 44, 100, 89, 36, 26, 39, 34, 74, 83, 68, 16, 19, 93, 60, 67, 48, 86, 33, 2, 50, 97, 80, 29, 92, 85, 71, 23, 17, 42, 70, 98, 65}

    Returns: 59

  10. {33, 97, 7, 87, 46, 8, 23, 18, 73, 95, 10, 16, 72, 22, 75, 1, 92, 82, 81, 70, 36, 27, 90, 55, 85, 84, 9, 34, 31, 93, 45, 42, 29, 63, 28, 51, 21, 35, 71, 49, 44, 79, 26, 52, 57, 64, 62, 68, 77, 24}

    Returns: 47

  11. {59, 99, 13, 42, 67, 32, 40, 37, 95, 22, 88, 1, 19, 77, 45, 74, 60, 83, 16, 93, 3, 65, 87, 33, 52, 6, 73, 39, 8, 41, 12, 21, 46, 25, 58}

    Returns: 64

  12. {44, 77, 20, 49, 27, 99, 91, 59, 79, 9, 50}

    Returns: 80

  13. {59, 30, 41, 54, 67, 76, 40, 93, 15, 95, 18, 60, 98, 36, 38, 34, 62, 49}

    Returns: 66

  14. {78, 32, 60, 25, 42, 80, 41, 10, 20, 1, 18, 75, 23, 61, 54, 34, 26, 53, 2, 85, 49, 36, 88, 4}

    Returns: 64

  15. {86, 12, 88, 33, 54, 68, 56, 11, 21}

    Returns: 69

  16. {60, 58, 81, 79, 27, 10, 80, 95, 38, 22, 48, 78}

    Returns: 74

  17. {40, 73, 51, 67, 92, 45, 36, 87, 69, 80, 23, 47, 82, 94, 61, 29, 68, 17, 54, 48, 5, 96, 1, 93, 42, 34, 100, 85, 70, 26, 22, 24, 78, 77, 20, 49, 4, 9}

    Returns: 62

  18. {75, 97, 22, 19, 11, 47, 74, 39, 24, 94, 20, 2, 28, 62, 40, 96, 67, 33, 23, 79, 44, 35, 12, 53, 57, 37, 9, 72, 6, 17, 13, 68, 16, 34, 51, 26, 30, 43, 8, 70}

    Returns: 56

  19. {44, 21, 62, 85, 6, 58, 12, 99, 76, 52, 45, 80, 86, 78, 94, 70, 17, 71, 59, 88, 81, 29, 3}

    Returns: 74

  20. {49, 38, 59, 53, 60, 35, 99, 18, 23, 90, 10, 76, 58, 46, 2, 92}

    Returns: 82

  21. {84, 76, 95, 18, 65, 64, 7, 30, 38, 66, 72, 56, 25, 93, 51}

    Returns: 74

  22. {36, 11, 100, 79, 42, 15, 64, 34, 72, 87, 66, 53, 13, 52, 74, 22, 44, 48, 71, 46, 68, 18, 69, 60, 6, 97, 39, 93, 96, 8, 20, 31, 12, 32, 81, 86, 5, 63, 76}

    Returns: 57

  23. {66, 71, 60, 70, 34, 37, 87, 93, 9, 56, 22, 63, 62, 51, 47, 85, 12, 4, 17, 3, 32, 74, 19, 24, 29, 11, 48, 75}

    Returns: 63

  24. {9, 56, 87, 29, 93, 64, 88, 84, 91, 61, 11, 58, 72, 94}

    Returns: 72

  25. {41, 81, 34, 59, 92, 10, 78, 75, 69, 53, 5, 49, 36, 83, 48, 100, 26, 98, 3, 24, 7, 64, 72, 15, 18, 61, 70, 27}

    Returns: 70

  26. {59, 87, 31, 85, 92, 48, 29, 72, 1, 15, 50, 96, 73, 100, 53, 98, 42, 39}

    Returns: 82

  27. {47, 12, 10, 30, 95, 44, 88, 81, 72, 55, 65, 48, 76, 27, 43, 31, 70, 60, 49, 87, 96, 5, 24, 4, 86, 89, 40, 61, 94, 37, 34, 45, 98, 7, 85, 71, 92, 64, 79, 21, 29, 51, 23, 33, 16, 41, 53, 35}

    Returns: 47

  28. {2, 81, 68, 44, 20, 21, 35, 57, 37, 9, 56, 45, 42, 43, 58, 91, 72, 19, 41, 94, 23, 60, 6, 63, 39, 40, 70, 31, 59, 92, 50, 65, 76, 36, 53, 8, 80, 61, 27, 71, 67, 32, 48, 66}

    Returns: 49

  29. {10, 97, 23, 89, 76, 9, 43, 59, 71, 6, 51, 19, 29, 11, 68, 48, 66, 44, 18, 26, 40, 30, 41, 61, 49, 57, 92, 79, 64, 69, 88, 86, 21, 80, 17, 50, 35, 28, 94, 70}

    Returns: 52

  30. {66, 13, 52, 23, 96, 31, 1}

    Returns: 89

  31. {83, 95, 33, 73, 40}

    Returns: 58

  32. {67, 58, 18, 53, 9, 90, 64, 28, 34, 92, 13, 36, 30, 14, 7, 54, 75, 43, 45, 82, 91, 25, 95, 35, 65, 11, 31, 3, 16, 79, 99, 19, 2, 96, 63, 50, 20, 49, 98, 85, 56, 73, 32, 4, 24, 87, 76}

    Returns: 51

  33. {100, 20, 83, 27, 6, 46, 29, 31, 55, 5, 9, 4, 51, 41, 99, 47, 10, 36, 66, 22, 43, 8, 71, 37, 50, 13, 28, 62, 30, 54}

    Returns: 67

  34. {61, 39, 68, 38, 16, 23, 41, 63, 43, 13, 77, 52, 89, 10, 98, 26, 55, 24, 51, 47, 44, 12, 67, 49, 75, 11, 64, 50, 87, 62, 79, 45, 5, 25, 80, 6, 73, 19, 76, 71, 91, 90, 29, 78, 81, 40, 21, 15, 92, 46}

    Returns: 44

  35. {78, 69, 75, 62, 24, 32, 15, 48, 4, 55, 100, 31, 49, 58, 18, 39}

    Returns: 81

  36. {95, 8, 33, 36, 91, 55, 45, 61, 71, 20, 100}

    Returns: 82

  37. {68, 26, 14, 64, 37, 72, 56}

    Returns: 52

  38. {63, 36, 79, 42, 78, 9, 65, 98, 54, 12, 60, 25, 96, 39, 11, 45, 47, 56, 6, 49, 31, 35, 81, 18, 100, 62, 75, 73, 80, 84, 17, 68, 88, 53, 10, 14, 85, 3, 34, 5, 82, 27, 43, 59, 69, 97}

    Returns: 52

  39. {40, 52, 29, 22, 88, 98, 51, 99, 57, 34, 74, 9, 87, 3, 76, 46, 94, 5, 42, 58, 32, 44, 21, 7, 64, 73, 86, 90, 62, 18, 12, 37, 66, 4, 78, 25, 8, 27, 69, 30, 65, 35, 16, 31, 47, 38, 81, 10, 45, 1}

    Returns: 49

  40. {22, 29, 37, 88, 20, 25, 41, 9, 66, 53, 65, 59, 80, 57, 71, 40, 60, 56, 6, 2}

    Returns: 67

  41. {34, 75, 3, 24, 66, 57, 96, 59, 36, 69, 56, 97, 95, 31, 2, 93, 51, 87, 40, 20, 22, 26, 86, 39, 28, 49, 77, 62, 79, 58, 38, 92, 19, 30, 18, 81, 88, 65, 41, 100}

    Returns: 59

  42. {17, 26, 22, 38, 13, 29, 10, 12, 32, 30, 11, 51, 70, 95, 40, 52, 66, 45, 81, 35, 91, 41, 99, 5, 33, 76, 58, 56, 73, 92, 77, 98, 19, 90, 8, 83, 100, 7, 46, 63, 36, 89, 67, 43, 84, 65, 3, 69, 15}

    Returns: 49

  43. {42, 90, 7, 84, 44, 5, 25, 22, 28, 26, 40, 10, 11, 41, 9, 21, 69, 100, 94, 62, 68, 27, 92, 35, 77, 46, 17, 18, 72, 51, 29, 4, 60, 50, 12, 83, 55, 82, 98, 15, 88, 45, 47, 14, 79, 70, 30, 39, 37, 56}

    Returns: 47

  44. {77, 80, 70, 74, 22, 76, 17, 42, 5, 85, 21, 11, 47, 97, 24, 67, 56, 68, 4, 66, 30, 71, 65, 45, 83, 86, 87, 40, 32, 28, 44, 88, 27, 38, 82, 51}

    Returns: 58

  45. {32, 27, 45, 73, 63, 37, 26, 39, 88, 56, 65, 13, 85, 61, 51, 57, 95, 94, 21, 2, 29, 90, 77}

    Returns: 71

  46. {40, 21, 18, 59, 73, 23, 2, 61, 92, 90, 69, 5, 29, 57, 91, 47, 95, 6, 93, 49, 36, 15, 75, 25, 99, 32, 67, 71, 53, 11, 46, 87, 33, 52, 28}

    Returns: 63

  47. {99, 6, 1, 14, 16, 49, 17, 98, 85, 28, 94, 74, 70, 42, 88, 11, 25, 87, 35, 67, 83, 23, 95, 82, 76, 77, 64, 30, 100, 97, 32, 5, 55, 57}

    Returns: 66

  48. {56, 29, 33, 76, 60, 75, 22, 4, 45, 36, 37, 73, 67, 19, 14, 57, 69, 95, 25, 34, 78, 20, 44, 61, 90, 85, 80, 71, 59, 99, 72, 16, 9, 52, 7, 53, 3, 27, 77, 46}

    Returns: 57

  49. {67}

    Returns: 0

  50. {18, 93, 12, 24, 40, 72, 90, 71, 64, 11, 53, 70, 98, 83, 4, 76, 85, 54, 91, 58, 88, 89, 75, 6, 43, 48, 28, 45, 46, 66, 8, 34, 99, 59}

    Returns: 62

  51. {43, 65, 79}

    Returns: 34

  52. {36, 84, 93, 46, 80, 54, 74, 28, 88, 41, 4, 29, 85, 62, 75, 100, 71, 48, 68, 58}

    Returns: 77

  53. {10, 8, 30, 32, 78, 84, 46, 81, 87, 55, 92}

    Returns: 74

  54. {93, 14, 13, 98}

    Returns: 82

  55. {54, 94, 48, 60, 78, 80, 71, 66}

    Returns: 39

  56. {60, 22, 89, 25, 93}

    Returns: 67

  57. {3, 33, 53, 51, 67, 14, 7, 6, 5, 57, 24, 100, 97, 59, 29, 22}

    Returns: 82

  58. {61, 54, 39, 10, 2, 23, 36, 95, 97, 66, 6, 67, 93, 45, 94, 91, 29, 19, 78, 84, 72, 80, 98, 64, 1, 74, 26, 96, 51, 57, 14}

    Returns: 67

  59. {1, 7, 8, 2 }

    Returns: 4

  60. {7 }

    Returns: 0

  61. {58 }

    Returns: 0

  62. {2, 12 }

    Returns: 9

  63. {1, 3 }

    Returns: 1

  64. {7, 4, 77, 47, 74, 44 }

    Returns: 68

  65. {3, 2, 9, 4 }

    Returns: 4

  66. {1 }

    Returns: 0

  67. {1, 4 }

    Returns: 2

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

    Returns: 0

  69. {10, 20 }

    Returns: 9

  70. {9, 3, 6, 4 }

    Returns: 3

  71. {4, 10, 29 }

    Returns: 23

  72. {5, 8, 10 }

    Returns: 3


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: