Problem Statement
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
{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.
{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.
{9, 9, 9, 9}
Returns: 1
Regardless of which two elements Brus swaps, the resulting sequence will always be {9, 9, 9, 9}.
{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
{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
{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
{12, 23, 39, 16, 30, 46, 47, 29, 43, 12, 19, 27, 44, 1, 7, 47}
Returns: 119
{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
{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
{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
{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
{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
{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
{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
{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
{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
{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
{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
{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
{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
{1, 1}
Returns: 1
{1, 2, 1, 3}
Returns: 6
{3, 3, 4, 3}
Returns: 4
{4, 4, 1}
Returns: 3
{1, 2, 1}
Returns: 3
{1, 4, 3, 1}
Returns: 6
{4, 4, 2, 3}
Returns: 6
{3, 1, 1, 3}
Returns: 5
{2, 2, 1, 4}
Returns: 6
{2, 2, 3}
Returns: 3
{6, 13, 26, 9, 39, 7, 31, 7, 28, 22, 43, 6, 5, 26, 44, 44, 40, 4, 5}
Returns: 167
{11, 5, 13, 47, 6, 4, 6, 20, 42, 18, 4, 31, 46, 6, 34, 33, 6, 6}
Returns: 143
{38, 9, 5, 35, 25}
Returns: 10
{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, 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
{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
{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
{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
{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
{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
{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
{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
{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
{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, 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, 44, 14, 8, 27, 23, 10, 20, 34, 9, 30, 39, 4, 44, 35, 46, 30, 46}
Returns: 149
{12, 26, 17, 41, 13, 22, 23, 34, 41, 4, 38, 17, 18, 9}
Returns: 90
{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
{1, 2, 3, 4, 5 }
Returns: 10
{1, 2, 3 }
Returns: 3
{1, 2 }
Returns: 1
{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
{9, 9, 9, 9 }
Returns: 1
{2, 2 }
Returns: 1
{1, 2, 3, 5, 7 }
Returns: 10
{1, 1, 1, 1, 1, 1, 2, 2, 2, 2 }
Returns: 25
{3, 4, 5 }
Returns: 3
{45, 43, 12, 5, 5, 23 }
Returns: 15
{2, 3, 4 }
Returns: 3
{1, 47, 2 }
Returns: 3
{1, 47 }
Returns: 1
{7, 4 }
Returns: 1
{1, 2, 3, 4 }
Returns: 6
{2, 2, 2, 2, 2, 2, 2, 2, 2, 2 }
Returns: 1
{3, 2, 1 }
Returns: 3
{1, 47, 20 }
Returns: 3
{4, 5, 6 }
Returns: 3
{2, 2, 4, 2 }
Returns: 4
{1, 2, 3, 4, 6, 6, 6 }
Returns: 19
{3, 33, 3 }
Returns: 3
{1, 11, 1 }
Returns: 3
{4, 7, 4 }
Returns: 3
{3, 1, 2 }
Returns: 3
{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
{3, 33, 1, 11 }
Returns: 6
{1, 1 }
Returns: 1
{12, 13, 14 }
Returns: 3
{7, 4, 4 }
Returns: 3
{1, 1, 2, 2 }
Returns: 5
{1, 47, 3 }
Returns: 3
{2, 3, 2, 2, 2, 3 }
Returns: 9
{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
{4, 5, 7 }
Returns: 3
{4, 7, 4, 7 }
Returns: 5
{4, 4 }
Returns: 1
{12, 13, 14, 14, 12 }
Returns: 9
{4, 9, 3 }
Returns: 3
{4, 3, 2, 1 }
Returns: 6
{1, 2, 2, 3 }
Returns: 6
{3, 3 }
Returns: 1
{9, 9 }
Returns: 1
{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