Statistics

Problem Statement for "TheSwapsDivTwo"

Problem Statement

John has a sequence of integers. Brus is going to choose two different positions in John's sequence and swap the elements at those positions. (The two swapped elements may have the same value.) Return the number of different sequences Brus can obtain after he makes the swap.

Definition

Class:
TheSwapsDivTwo
Method:
find
Parameters:
int[]
Returns:
int
Method signature:
int find(int[] sequence)
(be sure your method is public)

Constraints

  • sequence will contain between 2 and 47 elements, inclusive.
  • Each element of sequence will be between 1 and 47, inclusive.

Examples

  1. {4, 7, 4}

    Returns: 3

    If Brus swaps elements 0 and 1 (0-based indices), the sequence will change to {7, 4, 4}. If he swaps elements 1 and 2 instead, the sequence will change to {4, 4, 7}. Finally, if the swaps elements 0 and 2, the sequence will remain {4, 7, 4}. These three outcomes are all distinct.

  2. {1, 47}

    Returns: 1

    Brus has to swap the only two elements, producing the sequence {47, 1}. Note that Brus has to make the swap, he cannot keep the original sequence.

  3. {9, 9, 9, 9}

    Returns: 1

    Regardless of which two elements Brus swaps, the resulting sequence will always be {9, 9, 9, 9}.

  4. {22, 16, 36, 35, 14, 9, 33, 6, 28, 12, 18, 14, 47, 46, 29, 22, 14, 17, 4, 15, 28, 6, 39, 24, 47, 37}

    Returns: 319

  5. {7, 2, 21, 27, 5, 8, 14, 4, 42, 1, 12, 12, 24, 19, 31, 17, 19, 34, 13, 16, 30, 10, 20, 19, 30, 1, 47, 10, 19, 38, 30, 31, 33, 23, 46, 44, 8, 31, 26, 36, 1, 1, 12, 39, 9}

    Returns: 968

  6. {9, 40, 28, 28, 28, 36, 34, 14, 10, 38, 25, 25, 24, 24, 13, 15, 2, 33, 19, 12, 17, 21, 3, 25, 24, 5, 19, 11, 31, 16, 13, 37, 37, 29, 36, 21, 19, 11, 43, 8, 31, 47, 47, 20}

    Returns: 928

  7. {12, 23, 39, 16, 30, 46, 47, 29, 43, 12, 19, 27, 44, 1, 7, 47}

    Returns: 119

  8. {24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24}

    Returns: 1

  9. {41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41}

    Returns: 1

  10. {19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19}

    Returns: 1

  11. {47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47}

    Returns: 1

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

    Returns: 1081

  13. {6, 7, 6, 6, 5, 7, 7, 6, 7, 6, 6, 6, 6, 6, 5, 4, 7, 7, 5, 4, 4, 5, 6, 5, 7, 7, 4, 5, 5, 5, 4, 5, 5, 4, 4, 6, 4, 4, 5, 6, 4, 4, 6, 5, 5, 6, 5}

    Returns: 817

  14. {5, 6, 4, 5, 7, 4, 6, 4, 4, 6, 4, 7, 7, 5, 4, 4, 5, 4, 6, 6, 4, 4, 4, 6, 7, 5, 4, 6, 5, 5, 7, 7, 4, 5, 4, 4, 4, 6, 4, 6, 6, 7, 7, 4, 7, 7, 6}

    Returns: 801

  15. {5, 7, 6, 7, 4, 4, 6, 6, 7, 5, 7, 7, 4, 7, 7, 5, 5, 7, 4, 4, 5, 6, 4, 7, 5, 7, 6, 5, 4, 7, 7, 5, 5, 5, 5, 6, 6, 5, 4, 7, 6, 5, 6, 4, 4, 5, 7}

    Returns: 819

  16. {1, 2, 1, 1, 2, 2, 2, 1, 2, 1, 1, 1, 1, 1, 2, 1, 2, 2, 2, 1, 1, 2, 1, 2, 2, 2, 1, 2, 2, 2, 1, 2, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 2, 1, 2}

    Returns: 551

  17. {2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 2, 2, 2, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 2, 2, 1}

    Returns: 523

  18. {2, 2, 1, 2, 1, 1, 1, 1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 1, 1, 2, 1, 1, 2, 2, 2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 1, 1, 2, 1, 2, 1, 2, 1, 1, 1, 2, 2}

    Returns: 533

  19. {1, 1, 1, 1, 2, 1, 2, 1, 2, 2, 1, 2, 1, 2, 2, 1, 2, 1, 2, 2, 1, 1, 2, 2, 2, 1, 2, 2, 2, 2, 1, 1, 2, 1, 1, 2, 2, 1, 1, 2, 1, 1, 2, 1, 1, 1, 2}

    Returns: 553

  20. {2, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 2, 1, 2, 2, 1, 2, 1, 1, 2, 1, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 1, 1, 1, 2, 2, 1, 2, 1, 1, 2}

    Returns: 523

  21. {1, 1}

    Returns: 1

  22. {1, 2, 1, 3}

    Returns: 6

  23. {3, 3, 4, 3}

    Returns: 4

  24. {4, 4, 1}

    Returns: 3

  25. {1, 2, 1}

    Returns: 3

  26. {1, 4, 3, 1}

    Returns: 6

  27. {4, 4, 2, 3}

    Returns: 6

  28. {3, 1, 1, 3}

    Returns: 5

  29. {2, 2, 1, 4}

    Returns: 6

  30. {2, 2, 3}

    Returns: 3

  31. {6, 13, 26, 9, 39, 7, 31, 7, 28, 22, 43, 6, 5, 26, 44, 44, 40, 4, 5}

    Returns: 167

  32. {11, 5, 13, 47, 6, 4, 6, 20, 42, 18, 4, 31, 46, 6, 34, 33, 6, 6}

    Returns: 143

  33. {38, 9, 5, 35, 25}

    Returns: 10

  34. {32, 31, 46, 42, 38, 10, 30, 21, 7, 26, 18, 31, 46, 25, 22, 17, 5, 22, 36, 46, 32, 8, 7, 28, 29, 34, 20, 5}

    Returns: 371

  35. {35, 35, 6, 42, 45, 47, 33, 39, 28, 27, 33, 17, 35, 13, 29, 16, 39, 12, 11, 21, 42, 38, 39, 28, 6, 14, 38, 39, 46, 41, 35, 20, 32, 19, 37, 34, 22, 38, 39, 42, 43, 31, 25, 40}

    Returns: 922

  36. {42, 41, 13, 37, 30, 35, 14, 9, 17, 18, 14, 35, 18, 15, 9, 40, 34, 45, 46, 46, 12, 27, 20, 37, 38, 36, 21, 32, 21, 22, 32, 38, 15, 39, 41, 32, 40, 33, 41, 47}

    Returns: 765

  37. {44, 35, 45, 46, 23, 42, 17, 14, 34, 33, 11, 6, 21, 6, 16, 5, 9, 42, 34, 40, 23, 45, 37, 11, 41, 23, 11, 44, 31, 32, 32, 39, 42, 33, 44, 35, 31, 23, 13, 36, 40, 25, 34, 19, 13}

    Returns: 965

  38. {34, 44, 20, 45, 46, 23, 28, 47, 12, 26, 47, 29, 37, 15, 12, 28, 25, 17, 31, 10, 6, 7, 26, 11, 14}

    Returns: 297

  39. {34, 40, 47, 32, 18, 9, 27, 45, 8, 28, 16, 39, 23, 17, 39, 11, 10, 16, 20, 43, 24, 24, 35, 19, 46, 8, 45, 22, 15, 31, 10, 16, 40, 43, 34, 24, 40, 28, 37, 24, 26, 25, 41, 8, 44, 24, 39}

    Returns: 1055

  40. {42, 23, 38, 38, 28, 13, 25, 6, 35, 7, 29, 28, 24, 18, 26, 40, 9, 45, 45, 12, 29, 23, 28, 4, 35, 19, 22, 41, 26, 10, 41, 14, 27, 44, 29, 4}

    Returns: 618

  41. {21, 20, 10, 23, 10, 47, 6, 26, 34, 31, 5, 33, 25, 22, 4, 32, 19, 32, 23, 10, 18, 44, 12, 15, 16, 45, 40, 40, 34, 26, 33, 9, 37, 19, 13, 35, 23, 19, 5, 42, 24, 17, 22, 39, 4, 33}

    Returns: 1017

  42. {4, 8, 8, 13, 40, 42, 26, 17, 17, 11, 24, 11, 11, 9, 38, 46, 46, 29, 33, 17, 32, 5, 30, 33, 42, 22, 31, 6, 39, 18, 14, 8, 21, 9, 29, 5, 7, 30, 11, 43, 21, 31, 24, 14}

    Returns: 924

  43. {18, 39, 47, 13, 9, 9, 6, 23, 5, 12, 37, 45, 35, 18, 30, 9, 46, 19, 15, 5, 4, 33, 12, 4, 14, 30, 24, 42, 45, 41, 17, 25, 20, 41, 43, 20, 27, 45, 43, 17, 22, 32, 15}

    Returns: 888

  44. {42, 46, 38, 30, 41, 18, 9, 27, 29, 7, 11, 36, 17, 8, 19, 21, 30, 29, 19, 30, 24, 21, 44, 46, 23, 17, 36, 37, 46, 34, 47, 37}

    Returns: 485

  45. {45, 45, 14, 40, 44, 16, 46, 27, 22, 40, 7, 7, 5, 45, 6, 7, 25, 20, 27, 39, 40, 25, 27, 42, 37, 27, 27, 9}

    Returns: 359

  46. {46, 44, 14, 8, 27, 23, 10, 20, 34, 9, 30, 39, 4, 44, 35, 46, 30, 46}

    Returns: 149

  47. {12, 26, 17, 41, 13, 22, 23, 34, 41, 4, 38, 17, 18, 9}

    Returns: 90

  48. {22, 16, 36, 35, 14, 9, 33, 6, 28, 12, 18, 14, 47, 46, 29, 22, 14, 17, 4, 15, 28, 6, 39, 24, 47, 37 }

    Returns: 319

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

    Returns: 10

  50. {1, 2, 3 }

    Returns: 3

  51. {1, 2 }

    Returns: 1

  52. {16, 10, 16, 38, 1, 5, 46, 29, 27, 34, 16, 33, 10, 7, 3, 22, 20, 19, 39, 43, 25, 21, 20, 37, 20, 17, 7, 19, 17, 15, 26, 6, 3, 30, 1, 16, 24, 17, 23, 21, 20, 17, 16, 29, 6, 13, 19 }

    Returns: 1050

  53. {9, 9, 9, 9 }

    Returns: 1

  54. {2, 2 }

    Returns: 1

  55. {1, 2, 3, 5, 7 }

    Returns: 10

  56. {1, 1, 1, 1, 1, 1, 2, 2, 2, 2 }

    Returns: 25

  57. {3, 4, 5 }

    Returns: 3

  58. {45, 43, 12, 5, 5, 23 }

    Returns: 15

  59. {2, 3, 4 }

    Returns: 3

  60. {1, 47, 2 }

    Returns: 3

  61. {1, 47 }

    Returns: 1

  62. {7, 4 }

    Returns: 1

  63. {1, 2, 3, 4 }

    Returns: 6

  64. {2, 2, 2, 2, 2, 2, 2, 2, 2, 2 }

    Returns: 1

  65. {3, 2, 1 }

    Returns: 3

  66. {1, 47, 20 }

    Returns: 3

  67. {4, 5, 6 }

    Returns: 3

  68. {2, 2, 4, 2 }

    Returns: 4

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

    Returns: 19

  70. {3, 33, 3 }

    Returns: 3

  71. {1, 11, 1 }

    Returns: 3

  72. {4, 7, 4 }

    Returns: 3

  73. {3, 1, 2 }

    Returns: 3

  74. {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 }

    Returns: 1035

  75. {3, 33, 1, 11 }

    Returns: 6

  76. {1, 1 }

    Returns: 1

  77. {12, 13, 14 }

    Returns: 3

  78. {7, 4, 4 }

    Returns: 3

  79. {1, 1, 2, 2 }

    Returns: 5

  80. {1, 47, 3 }

    Returns: 3

  81. {2, 3, 2, 2, 2, 3 }

    Returns: 9

  82. {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 }

    Returns: 780

  83. {4, 5, 7 }

    Returns: 3

  84. {4, 7, 4, 7 }

    Returns: 5

  85. {4, 4 }

    Returns: 1

  86. {12, 13, 14, 14, 12 }

    Returns: 9

  87. {4, 9, 3 }

    Returns: 3

  88. {4, 3, 2, 1 }

    Returns: 6

  89. {1, 2, 2, 3 }

    Returns: 6

  90. {3, 3 }

    Returns: 1

  91. {9, 9 }

    Returns: 1

  92. {22, 16, 36, 35, 14, 9, 33, 6, 28, 12, 18, 14, 47, 46, 29, 22, 14, 17, 4, 15, 28, 6, 39, 24, 47, 37, 10, 11, 12, 13, 20, 25, 35, 41, 15, 14, 32, 25, 35, 45, 36, 45, 21, 25, 18 }

    Returns: 970


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: