Statistics

Problem Statement for "NavalBattle"

Problem Statement

Alice and Bob are playing a game called "Naval Battle". The playing field is a row of fieldLength 1x1 squares. At the beginning of the game, Alice placed one or more battleships on the field. Each battleship occupies exactly shipLength consecutive squares. There must be one or more vacant squares between every pair of adjacent battleships. Bob doesn't know how many battleships Alice has placed, and he doesn't know their positions.

Now, Bob starts shooting. For each shot, he says the number of a single square. The squares are numbered from left to right starting with 0. After each shot, Alice tells him if he hit a square that contains a battleship or if he missed.

Bob suspects that Alice is playing dishonestly and providing wrong answers. You are given a int[] shots, the i-th element of which is the number chosen by Bob on his i-th shot. You are also given a String answers, the i-th character of which is '0' (zero) if Alice tells him that he missed on the i-th shot, or '1' (one) if she tells him that he hit a battleship.

Return the 0-based index of the earliest answer after which Bob can be sure that Alice is playing dishonestly. Return -1 if there is no such move.

Definition

Class:
NavalBattle
Method:
firstDishonestMove
Parameters:
int, int, int[], String
Returns:
int
Method signature:
int firstDishonestMove(int fieldLength, int shipLength, int[] shots, String answers)
(be sure your method is public)

Constraints

  • fieldLength will be between 1 and 50, inclusive.
  • shipLength will be between 1 and fieldLength, inclusive.
  • shots will contain between 1 and 50 elements, inclusive.
  • Each element of shots will be between 0 and fieldLength-1, inclusive.
  • answers will contain exactly n characters, where n is the number of elements in shots.
  • answers will contain only the digits '0' and '1'.

Examples

  1. 1

    1

    {0}

    "1"

    Returns: -1

  2. 3

    2

    {0, 2, 1}

    "110"

    Returns: 1

  3. 5

    2

    {0, 4, 1, 3, 2}

    "11110"

    Returns: -1

  4. 10

    1

    {4, 7, 8, 2}

    "0110"

    Returns: 2

    Alice can’t place two battleships without one or more vacant squares between them.

  5. 10

    10

    {4, 2}

    "01"

    Returns: 0

  6. 50

    5

    {47, 28, 31, 22, 7, 39, 48, 11, 44, 34, 35, 21, 3, 18, 42, 28, 3, 7, 8, 21, 31, 14, 29, 3, 17, 16, 33, 26, 13, 40, 14, 32, 42, 29, 13, 11, 35, 48, 34, 28, 16, 31, 10, 15, 49, 10, 24, 39, 21, 27}

    "11111110100000110110111001011111111001011101001100"

    Returns: -1

  7. 1

    1

    {0}

    "1"

    Returns: -1

  8. 2

    2

    {1}

    "1"

    Returns: -1

  9. 3

    2

    {0, 0, 2}

    "110"

    Returns: -1

  10. 4

    2

    {0, 3}

    "00"

    Returns: -1

  11. 5

    3

    {2, 1, 3}

    "111"

    Returns: -1

  12. 6

    5

    {4, 2, 2, 5, 1}

    "00000"

    Returns: 0

  13. 7

    4

    {3, 6, 5}

    "111"

    Returns: -1

  14. 8

    7

    {7, 2, 1, 1, 6, 3, 5, 7}

    "00000000"

    Returns: 1

  15. 9

    4

    {7, 8, 0, 8}

    "0000"

    Returns: -1

  16. 10

    9

    {9, 1, 2}

    "000"

    Returns: 1

  17. 11

    3

    {2, 9, 4, 4, 1}

    "10111"

    Returns: -1

  18. 12

    3

    {5, 3, 0, 4, 2, 9}

    "110101"

    Returns: -1

  19. 13

    9

    {3, 6, 10, 0, 2, 3, 5, 11, 11, 9, 7, 11, 6}

    "1000000010100"

    Returns: 1

  20. 14

    14

    {10, 5, 6, 8, 3}

    "00000"

    Returns: 0

  21. 15

    14

    {5, 6, 3, 11, 13, 7, 5, 13, 6}

    "000000000"

    Returns: 0

  22. 16

    3

    {5, 6, 4, 9, 11, 12}

    "001101"

    Returns: -1

  23. 17

    10

    {13, 1, 12, 6, 4, 2, 6, 5}

    "01011111"

    Returns: -1

  24. 18

    14

    {5, 13, 9, 6, 6, 3, 14, 6, 11, 7, 15, 17}

    "111111011100"

    Returns: -1

  25. 19

    7

    {14, 12, 18, 3, 4, 1, 13, 0}

    "11011111"

    Returns: -1

  26. 20

    19

    {18, 1, 11, 17, 7, 11, 1, 9, 5, 0, 10, 12, 16, 0, 13, 11, 14, 17}

    "000000000000000000"

    Returns: 0

  27. 21

    21

    {11, 1, 7, 17, 11, 11, 13, 2}

    "00000000"

    Returns: 0

  28. 22

    1

    {21, 16, 16, 13, 5, 9, 16, 6, 19, 5, 1, 3, 15, 0, 7, 19, 8, 20, 17, 8, 18, 11}

    "0000110000001000001000"

    Returns: 9

  29. 23

    11

    {16, 18, 21, 20, 7, 17, 22, 10, 8, 11, 11}

    "11111110000"

    Returns: 7

  30. 24

    22

    {14, 16, 3, 16, 20, 15, 19}

    "0000000"

    Returns: 0

  31. 25

    5

    {9, 22, 7, 17, 2, 20, 24, 15, 20, 4, 18}

    "00110001011"

    Returns: -1

  32. 26

    14

    {6}

    "1"

    Returns: -1

  33. 27

    3

    {1, 14, 17, 6, 9}

    "10100"

    Returns: -1

  34. 28

    14

    {14, 18, 23, 0, 3, 20, 8}

    "1000001"

    Returns: -1

  35. 29

    28

    {1, 28, 2, 25, 9, 8, 22, 10, 14, 25, 27, 18, 28, 1, 1, 28, 9, 24, 0, 18}

    "00000000000000000000"

    Returns: 0

  36. 30

    30

    {14, 3, 4, 14, 4, 16, 6, 11, 14, 18, 21, 1, 18, 10, 3}

    "000000000000000"

    Returns: 0

  37. 31

    24

    {14, 16, 5, 5, 10, 10, 1, 11, 19, 17, 18, 28, 22, 6, 26, 17, 4}

    "11111101111001011"

    Returns: 12

  38. 32

    20

    {9, 6, 17, 12, 27, 4, 26, 2, 17, 19, 7, 18, 21, 18, 15, 3, 8, 28, 1, 27, 1, 16, 3, 2, 5, 31, 15, 14, 13, 10}

    "000000000000000000000000000000"

    Returns: 2

  39. 33

    21

    {15, 18, 25, 18, 1, 6, 28, 17, 15, 14, 4, 30, 6, 7, 1, 0, 4, 19, 29}

    "1111000111010000110"

    Returns: 11

  40. 34

    8

    {30, 19, 15, 19, 17, 20, 15, 15, 1, 2, 30, 26, 8, 32, 17}

    "111010110011011"

    Returns: 3

  41. 35

    29

    {30, 32, 28, 1, 14, 17, 28, 10, 9, 29, 4, 23, 17, 3, 0}

    "111011111111100"

    Returns: -1

  42. 36

    27

    {26, 17}

    "11"

    Returns: -1

  43. 37

    13

    {33, 34}

    "00"

    Returns: -1

  44. 38

    24

    {16, 29, 31, 15, 8, 19, 25, 1, 37, 17, 6, 8, 32, 1, 32, 29, 23, 8, 12, 10, 13, 26, 11, 14, 12, 22, 32, 22, 22, 9, 0}

    "1111111001010001111111111101110"

    Returns: -1

  45. 39

    38

    {31, 23, 35, 10, 35, 35, 22, 1, 37, 9, 32, 17, 35, 28, 0, 32, 38, 11, 16, 37, 10, 37, 24, 10, 25, 32, 15, 24, 7, 31, 22, 23, 28, 19, 23, 6}

    "000000000000000000000000000000000000"

    Returns: 0

  46. 40

    1

    {4, 3, 20, 6, 19, 10, 36, 10, 1, 27, 27, 36, 27, 5, 9, 24, 10, 26, 38}

    "1011011100010001111"

    Returns: -1

  47. 41

    16

    {36, 31, 7, 10, 27, 14, 16, 40, 28, 25, 12, 35, 27, 0, 35, 27, 25, 12, 31, 4, 18, 13, 7, 11, 8, 34, 14, 0, 17, 15, 5, 0, 11, 30}

    "0100011001000110010001010000110010"

    Returns: 4

  48. 42

    10

    {21, 1, 31, 20, 23, 9, 16, 6, 10, 10, 40, 29, 31, 26, 35, 40, 6, 29, 7, 26, 35, 6, 26, 20, 12, 9, 0, 32, 6, 34, 14}

    "1111111111011000111011010101110"

    Returns: 14

  49. 43

    16

    {33, 4, 8, 15, 7, 33, 36, 22, 20, 8, 25, 11, 1, 28, 3, 4, 28, 19, 27, 13, 42, 22, 2, 12, 10, 35, 39, 4}

    "1111111001110111101100011111"

    Returns: -1

  50. 44

    17

    {38, 30, 22, 22, 21, 34, 14, 20, 35, 43, 19, 13, 42, 40, 22, 8}

    "0011101000110010"

    Returns: 7

  51. 45

    23

    {23, 10, 30, 25, 26, 29, 20, 28, 32, 22, 21, 27, 19, 37, 30, 4, 24, 15, 30, 20, 24, 28, 16, 40, 4, 42, 36, 2, 1, 20, 15, 31, 8, 38, 8, 36, 34, 7, 18, 36, 10, 43}

    "101111011111011010101101111100000101100101"

    Returns: 24

  52. 46

    18

    {13, 12, 9, 18, 36, 18, 27}

    "0000100"

    Returns: -1

  53. 47

    21

    {31, 20, 14, 30, 14, 2, 22, 41, 18, 20, 14, 25, 3, 44, 24, 0, 20, 43, 24, 40, 40, 32, 11, 2, 35, 6, 18, 42, 29, 38, 0, 18, 11, 29, 18, 41, 7, 44, 5, 2, 31, 31, 9, 8, 5, 46, 5}

    "01111010101110101011100000101001111000010000000"

    Returns: 9

  54. 48

    29

    {16, 39, 21, 12, 35, 1, 34, 1, 41, 34, 15, 16, 24, 13, 7, 29, 33, 34, 47, 41, 0, 24, 42, 23, 41, 24, 24, 33, 14, 16, 35, 2, 33, 29, 8, 39, 33, 28, 3, 13, 38, 4, 25}

    "1011101001110101100001010111111011101001001"

    Returns: 12

  55. 49

    26

    {6, 43}

    "10"

    Returns: -1

  56. 50

    21

    {35, 46, 36, 45, 0, 48, 49, 1, 19, 9, 7, 46, 37, 28, 30, 32, 36, 39, 14, 31, 14, 10, 15, 11, 12, 42, 7, 18, 43, 29, 44, 2}

    "11110001111111111011111011111110"

    Returns: 17

  57. 1

    1

    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}

    "11101111111111111101111111111111111111011111111111"

    Returns: 3

  58. 2

    1

    {0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 0, 1}

    "10101010100101001100100111010011001101000111100010"

    Returns: 1

  59. 3

    2

    {1, 1, 1, 0, 2, 1, 2, 2, 0, 0, 1, 2, 1, 0, 1, 2, 1, 1, 0, 2, 0, 2, 0, 0, 0, 0, 0, 1, 2, 0, 0, 1, 2, 1, 1, 2, 1, 2, 0, 0, 2, 2, 1, 2, 1, 0, 1, 1, 1, 2}

    "11101111001110111101010000111001111111001111101111"

    Returns: 26

  60. 4

    3

    {0, 2, 1, 3, 2, 0, 2, 2, 1, 0, 0, 1, 2, 3, 0, 3, 1, 2, 0, 0, 0, 0, 0, 3, 2, 1, 2, 1, 2, 1, 3, 3, 2, 1, 0, 3, 3, 3, 1, 0, 2, 2, 0, 3, 3, 3, 2, 0, 2, 3}

    "11101111111110101111111011111100111000111110001110"

    Returns: -1

  61. 5

    1

    {0, 4, 2, 3, 3, 2, 2, 3, 2, 4, 1, 2, 3, 2, 3, 0, 1, 1, 3, 4, 0, 1, 4, 4, 4, 1, 0, 2, 1, 3, 0, 3, 1, 1, 1, 2, 0, 1, 1, 2, 2, 0, 1, 0, 2, 4, 4, 0, 2, 2}

    "11100010110101110001101110110010000110011100111111"

    Returns: 5

  62. 6

    6

    {0, 2, 4, 1, 0, 0, 5, 3, 5, 5, 3, 1, 0, 1, 1, 5, 1, 5, 3, 5, 5, 1, 5, 3, 3, 3, 1, 1, 5, 4, 2, 1, 2, 4, 1, 2, 1, 2, 0, 1, 1, 4, 5, 4, 5, 2, 0, 1, 1, 1}

    "00110010000000100011101100000000000000100011000100"

    Returns: 0

  63. 7

    7

    {2, 4, 2, 0, 5, 4, 2, 2, 3, 3, 2, 3, 4, 6, 3, 6, 0, 3, 4, 3, 3, 6, 6, 6, 1, 1, 1, 4, 1, 6, 0, 5, 2, 6, 6, 0, 5, 5, 2, 6, 2, 0, 1, 2, 2, 4, 0, 2, 6, 4}

    "00000000000000000000000000000000000000000000000000"

    Returns: 0

  64. 8

    7

    {3, 5, 2, 7, 2, 1, 6, 5, 3, 1, 0, 1, 5, 2, 1, 7, 2, 0, 5, 3, 6, 5, 4, 4, 0, 4, 4, 5, 1, 7, 3, 7, 7, 4, 2, 0, 6, 2, 1, 1, 4, 4, 7, 7, 1, 1, 3, 7, 6, 2}

    "00000000000000000000000000000000000000000000000000"

    Returns: 0

  65. 9

    1

    {0, 3, 4, 5, 6, 8, 3, 0, 2, 1, 2, 4, 6, 0, 7, 2, 8, 4, 5, 2, 8, 4, 4, 2, 7, 5, 2, 4, 3, 6, 5, 4, 6, 5, 3, 7, 7, 7, 2, 6, 2, 2, 5, 7, 2, 0, 1, 5, 3, 5}

    "00101000000110000100011000010101100000010000000000"

    Returns: -1

  66. 10

    9

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

    "01111111110111111111111011111111011110111011111110"

    Returns: -1

  67. 11

    2

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

    "10011110101111000101000110100111010111111001011001"

    Returns: 7

  68. 12

    9

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

    "11101011111110110011011011001111111001101011011101"

    Returns: 13

  69. 13

    2

    {5, 4, 12, 7, 0, 11, 9, 2, 6, 5, 10, 8, 5, 8, 0, 12, 1, 7, 12, 4, 11, 0, 11, 1, 10, 8, 0, 3, 1, 11, 6, 0, 12, 6, 11, 11, 10, 0, 6, 4, 12, 10, 3, 1, 4, 12, 6, 11, 6, 2}

    "01000011101011101000011011011011011011110101000111"

    Returns: 7

  70. 14

    1

    {9, 8, 3, 4, 11, 8, 9, 0, 11, 6, 0, 9, 5, 11, 12, 8, 5, 8, 10, 2, 5, 8, 13, 8, 6, 11, 3, 11, 13, 2, 7, 11, 12, 9, 11, 0, 4, 13, 11, 11, 11, 2, 13, 5, 1, 0, 3, 5, 0, 7}

    "01010101011011110111110111000101100010100101110110"

    Returns: 12

  71. 15

    3

    {14, 1, 2, 10, 2, 12, 6, 10, 1, 9, 13, 13, 13, 11, 7, 11, 1, 3, 6, 9, 5, 12, 4, 1, 7, 2, 1, 10, 5, 6, 0, 1, 4, 14, 3, 9, 3, 13, 3, 6, 14, 8, 12, 1, 3, 11, 7, 7, 13, 2}

    "01100000010001010001101001000000001111101000110111"

    Returns: 4

  72. 16

    7

    {11, 13, 11, 13, 11, 9, 13, 15, 13, 9, 8, 15, 0, 4, 3, 6, 7, 7, 2, 8, 14, 2, 11, 10, 10, 8, 10, 15, 4, 10, 8, 14, 2, 15, 13, 2, 4, 12, 4, 10, 1, 3, 2, 3, 14, 15, 4, 8, 7, 14}

    "00000000000001111110010000001010100110101111001010"

    Returns: 30

  73. 17

    9

    {15, 11, 16, 5, 10, 15, 7, 11, 5, 13, 15, 16, 12, 1, 0, 16, 3, 1, 7, 14, 2, 0, 13, 6, 1, 3, 9, 7, 8, 10, 16, 6, 2, 1, 10, 9, 10, 10, 6, 9, 5, 1, 2, 3, 1, 13, 2, 13, 7, 14}

    "11001111011000000011001000111100001101000000010111"

    Returns: 12

  74. 18

    4

    {14, 14, 9, 9, 9, 2, 5, 16, 15, 14, 17, 0, 9, 5, 14, 9, 6, 11, 17, 17, 5, 13, 8, 2, 6, 17, 17, 12, 10, 14, 12, 4, 16, 1, 11, 14, 16, 17, 9, 1, 9, 17, 8, 17, 10, 11, 2, 14, 15, 0}

    "11110100111010110000001100011100110110101010101010"

    Returns: 4

  75. 19

    4

    {15, 2, 16, 15, 4, 16, 12, 9, 8, 15, 7, 18, 5, 15, 2, 16, 4, 12, 14, 18, 5, 13, 12, 1, 11, 8, 10, 12, 16, 17, 2, 7, 0, 14, 5, 11, 18, 9, 8, 6, 1, 3, 11, 8, 2, 6, 14, 13, 7, 6}

    "00000010000000000100011010110000000100000010000100"

    Returns: -1

  76. 20

    14

    {7, 19, 1, 15, 3, 7, 8, 10, 3, 7, 0, 2, 1, 6, 17, 18, 14, 5, 7, 3, 17, 0, 4, 8, 16, 0, 19, 5, 6, 16, 16, 16, 2, 2, 9, 8, 19, 3, 11, 3, 12, 4, 17, 15, 15, 5, 10, 3, 2, 18}

    "10101111101111000111011101011000111101111100011110"

    Returns: 9

  77. 21

    2

    {15, 17, 15, 15, 13, 6, 12, 19, 19, 0, 9, 20, 9, 1, 1, 14, 16, 16, 13, 17, 13, 4, 2, 10, 8, 3, 4, 7, 4, 1, 8, 3, 3, 18, 15, 14, 15, 19, 17, 18, 5, 5, 13, 1, 5, 12, 3, 18, 9, 8}

    "00001010001010000010110101101001100000000010011010"

    Returns: -1

  78. 22

    3

    {10, 11, 10, 0, 18, 15, 14, 20, 4, 13, 18, 1, 1, 18, 4, 8, 16, 1, 4, 10, 1, 17, 17, 10, 4, 16, 3, 2, 9, 9, 14, 3, 13, 6, 7, 12, 12, 19, 0, 10, 19, 9, 7, 8, 10, 9, 6, 19, 14, 2}

    "10110011110110111101100110011110110111111101011110"

    Returns: 16

  79. 23

    6

    {9, 21, 22, 11, 13, 8, 19, 17, 17, 2, 20, 12, 12, 3, 5, 20, 5, 11, 7, 16, 5, 16, 9, 8, 12, 0, 4, 20, 19, 10, 21, 22, 21, 22, 7, 2, 10, 5, 7, 7, 3, 13, 7, 8, 7, 16, 7, 5, 1, 4}

    "10001101100000101011111101000110001011110111111100"

    Returns: 25

  80. 24

    3

    {0, 3, 19, 20, 1, 18, 14, 22, 14, 19, 13, 17, 21, 20, 21, 3, 23, 18, 8, 17, 6, 8, 0, 12, 22, 14, 13, 1, 22, 16, 2, 16, 16, 13, 18, 3, 16, 1, 20, 16, 0, 15, 16, 7, 2, 18, 23, 4, 13, 18}

    "10011001101111110101111111111111111001111011110111"

    Returns: 8

  81. 25

    7

    {14, 6, 6, 9, 7, 13, 11, 24, 0, 15, 18, 13, 22, 7, 18, 22, 4, 4, 3, 2, 12, 18, 19, 11, 10, 17, 16, 22, 2, 2, 3, 11, 6, 22, 19, 15, 0, 9, 4, 17, 3, 0, 14, 9, 7, 16, 2, 16, 14, 13}

    "11110110101110111111111111111111111011111111011111"

    Returns: -1

  82. 26

    6

    {2, 5, 20, 13, 16, 11, 1, 9, 16, 15, 16, 24, 8, 12, 13, 6, 1, 23, 4, 20, 21, 12, 24, 9, 14, 13, 7, 21, 0, 18, 3, 17, 5, 13, 18, 16, 4, 0, 12, 19, 1, 17, 17, 12, 21, 15, 17, 11, 1, 23}

    "00101001111000010001100100010111100101010110101100"

    Returns: 7

  83. 27

    2

    {19, 3, 4, 20, 26, 15, 15, 24, 6, 1, 0, 0, 24, 5, 16, 2, 9, 15, 4, 23, 7, 22, 12, 19, 4, 26, 5, 1, 7, 0, 21, 26, 13, 22, 7, 7, 18, 23, 5, 7, 16, 11, 9, 9, 0, 10, 8, 24, 6, 12}

    "11100111110110100110101110011110111110011011110111"

    Returns: 10

  84. 28

    11

    {12, 1, 11, 1, 19, 6, 13, 26, 23, 3, 15, 13, 5, 13, 11, 10, 8, 7, 14, 5, 7, 3, 9, 21, 24, 23, 13, 12, 4, 1, 15, 1, 15, 9, 0, 18, 4, 1, 9, 20, 27, 22, 10, 17, 16, 19, 5, 21, 23, 6}

    "00100101110111111100111111110000011110111011011111"

    Returns: 2

  85. 29

    6

    {10, 22, 27, 20, 19, 1, 8, 23, 15, 19, 9, 4, 24, 16, 9, 23, 3, 6, 23, 13, 20, 4, 24, 11, 15, 13, 21, 8, 23, 9, 21, 14, 8, 6, 4, 25, 15, 4, 7, 4, 26, 6, 25, 19, 21, 17, 6, 22, 27, 21}

    "00100001100011010011001011001001000110001010010010"

    Returns: -1

  86. 30

    2

    {28, 13, 27, 29, 27, 13, 5, 19, 25, 27, 20, 16, 1, 5, 17, 11, 14, 25, 5, 14, 27, 6, 19, 8, 3, 18, 9, 14, 20, 4, 7, 16, 4, 10, 17, 19, 5, 24, 18, 9, 0, 13, 18, 8, 18, 15, 12, 2, 10, 19}

    "00101000000000010000100010000100000000000000001000"

    Returns: 9

  87. 31

    16

    {13, 25, 5, 5, 26, 1, 27, 6, 9, 26, 15, 28, 26, 1, 12, 4, 20, 20, 27, 0, 26, 6, 17, 21, 6, 15, 5, 7, 27, 29, 1, 19, 11, 28, 28, 17, 18, 14, 9, 11, 30, 0, 6, 23, 28, 19, 8, 20, 5, 16}

    "10000011101000001000011110110001100111110010011111"

    Returns: 6

  88. 32

    2

    {19, 8, 11, 14, 23, 6, 4, 4, 20, 31, 25, 23, 4, 29, 16, 31, 17, 23, 10, 18, 4, 19, 24, 9, 19, 16, 3, 29, 17, 1, 18, 17, 7, 19, 10, 10, 9, 26, 1, 17, 2, 5, 22, 5, 9, 24, 24, 20, 0, 10}

    "00101001010110110101100000001011000001010110001010"

    Returns: 7

  89. 33

    5

    {2, 19, 17, 15, 9, 25, 0, 16, 18, 21, 13, 9, 19, 9, 14, 6, 31, 15, 15, 27, 22, 30, 4, 12, 1, 17, 25, 25, 31, 19, 29, 18, 1, 19, 17, 8, 23, 21, 30, 23, 12, 24, 12, 5, 11, 32, 31, 27, 0, 8}

    "11110011100010000111011011000111111000100000000110"

    Returns: -1

  90. 34

    2

    {7, 21, 2, 4, 0, 24, 8, 25, 16, 22, 31, 22, 20, 24, 20, 28, 25, 7, 28, 23, 9, 29, 30, 28, 17, 21, 9, 24, 4, 2, 28, 15, 33, 19, 5, 26, 24, 0, 2, 24, 31, 25, 17, 23, 31, 30, 18, 29, 14, 10}

    "01001000001010100000001011000000000000011010111000"

    Returns: 37

  91. 35

    2

    {4, 0, 7, 19, 22, 28, 26, 10, 9, 2, 31, 33, 25, 12, 18, 18, 26, 20, 14, 32, 22, 11, 25, 16, 0, 23, 4, 16, 12, 32, 1, 0, 29, 20, 10, 3, 13, 2, 34, 0, 6, 24, 16, 31, 29, 34, 12, 11, 6, 11}

    "00001001111000000010100000000000001101000001000000"

    Returns: -1

  92. 36

    13

    {16, 5, 30, 16, 0, 19, 32, 24, 1, 5, 6, 34, 4, 33, 31, 29, 14, 9, 22, 26, 28, 35, 7, 7, 15, 8, 25, 16, 7, 2, 7, 10, 7, 15, 14, 12, 11, 9, 11, 35, 28, 8, 21, 29, 4, 12, 16, 6, 2, 32}

    "11010101011010001111101101111111101111101110111110"

    Returns: -1

  93. 37

    17

    {4, 35, 10, 28, 25, 33, 19, 3, 13, 21, 30, 14, 11, 15, 29, 5, 17, 30, 3, 28, 3, 32, 0, 29, 32, 17, 4, 12, 22, 13, 22, 22, 32, 20, 30, 11, 11, 28, 3, 10, 23, 14, 4, 33, 13, 14, 20, 30, 16, 34}

    "10111111111111110111111110111111111111111111111111"

    Returns: -1

  94. 38

    20

    {35, 5, 14, 31, 19, 9, 37, 27, 2, 23, 7, 34, 2, 35, 36, 1, 34, 15, 25, 19, 17, 34, 0, 37, 20, 16, 3, 24, 24, 29, 6, 6, 10, 17, 34, 10, 30, 31, 12, 13, 34, 28, 19, 9, 17, 14, 5, 18, 26, 33}

    "01101100111010010101100011100001110100110011111000"

    Returns: 9

  95. 39

    3

    {1, 35, 1, 7, 21, 10, 30, 2, 23, 16, 1, 6, 2, 37, 25, 1, 0, 32, 38, 6, 38, 7, 18, 6, 22, 15, 2, 15, 11, 1, 36, 30, 4, 24, 29, 9, 32, 28, 34, 15, 7, 19, 30, 1, 18, 24, 2, 37, 16, 18}

    "00000001010010000000001001110000101001010100101011"

    Returns: -1

  96. 40

    6

    {4, 36, 13, 32, 32, 14, 11, 31, 26, 3, 24, 39, 21, 13, 11, 21, 14, 22, 19, 10, 7, 32, 38, 3, 0, 35, 21, 14, 27, 29, 21, 32, 15, 36, 3, 19, 25, 32, 36, 21, 18, 20, 23, 34, 25, 4, 17, 19, 31, 1}

    "00111111011011111100110101110011101011010111110010"

    Returns: 9

  97. 41

    2

    {7, 26, 26, 18, 20, 37, 9, 8, 30, 2, 19, 21, 32, 32, 0, 0, 39, 32, 7, 25, 26, 19, 36, 18, 2, 34, 28, 38, 17, 19, 21, 28, 29, 34, 33, 20, 36, 26, 7, 3, 33, 34, 9, 18, 29, 40, 20, 32, 38, 11}

    "10010110101100111011011101100111011010111111010000"

    Returns: -1

  98. 42

    7

    {32, 28, 21, 39, 34, 35, 1, 23, 18, 2, 2, 13, 24, 1, 3, 21, 6, 35, 35, 17, 6, 19, 4, 31, 33, 32, 0, 21, 25, 29, 38, 25, 10, 8, 40, 12, 41, 28, 10, 15, 8, 12, 12, 32, 1, 29, 34, 22, 4, 34}

    "10001110101011111111011011111110110000101111011111"

    Returns: 9

  99. 43

    1

    {12, 21, 39, 34, 27, 8, 21, 30, 36, 10, 14, 23, 11, 16, 4, 32, 37, 39, 12, 16, 32, 21, 39, 11, 12, 42, 13, 38, 38, 33, 0, 33, 30, 3, 20, 16, 38, 39, 30, 25, 8, 8, 10, 20, 24, 40, 2, 31, 3, 31}

    "00000000000000010000100000000000000000000000000000"

    Returns: -1

  100. 44

    29

    {36, 37, 30, 1, 21, 27, 25, 1, 43, 38, 3, 21, 34, 29, 28, 31, 5, 3, 0, 43, 35, 15, 0, 27, 27, 25, 19, 28, 34, 30, 32, 27, 27, 24, 22, 3, 18, 32, 12, 20, 18, 8, 3, 6, 0, 16, 5, 5, 2, 21}

    "00101110001101111100010111110101111110111111011101"

    Returns: -1

  101. 45

    16

    {22, 8, 4, 33, 27, 6, 42, 36, 10, 28, 30, 6, 0, 7, 40, 13, 40, 35, 3, 38, 15, 19, 30, 1, 5, 15, 15, 21, 18, 30, 11, 21, 32, 34, 16, 27, 5, 5, 33, 27, 37, 15, 29, 29, 9, 13, 8, 40, 18, 0}

    "11101100111101010010111110111111100111010111111011"

    Returns: 12

  102. 46

    3

    {3, 2, 12, 28, 8, 35, 39, 37, 44, 19, 32, 18, 34, 4, 2, 18, 39, 37, 24, 9, 23, 3, 31, 25, 25, 26, 31, 7, 41, 42, 36, 24, 22, 42, 24, 2, 44, 2, 12, 17, 25, 11, 40, 21, 25, 45, 22, 44, 5, 17}

    "10000100100010000001000000100010000010000111011101"

    Returns: 13

  103. 47

    3

    {6, 39, 11, 2, 32, 32, 26, 41, 38, 13, 36, 35, 44, 4, 32, 43, 46, 0, 40, 38, 20, 5, 9, 5, 5, 45, 36, 6, 10, 14, 19, 7, 25, 6, 41, 33, 19, 17, 42, 39, 29, 20, 31, 5, 24, 9, 9, 38, 0, 24}

    "00111110111010101101000001100000100001000010100101"

    Returns: 48

  104. 48

    20

    {8, 26, 31, 17, 32, 42, 41, 25, 41, 41, 32, 29, 22, 32, 33, 41, 10, 19, 28, 10, 7, 15, 12, 29, 8, 3, 28, 1, 11, 38, 6, 37, 40, 20, 14, 36, 17, 15, 37, 18, 9, 27, 45, 14, 20, 32, 36, 23, 11, 43}

    "10111110111101111111101011111111111111101110111011"

    Returns: 21

  105. 49

    4

    {17, 48, 33, 10, 11, 17, 42, 38, 32, 34, 45, 41, 35, 14, 36, 30, 29, 9, 33, 45, 29, 4, 34, 31, 10, 32, 23, 8, 47, 14, 26, 2, 44, 22, 11, 25, 13, 18, 29, 45, 38, 37, 41, 26, 23, 30, 7, 7, 48, 30}

    "11001110011111111101111100111101011111010110111111"

    Returns: 38

  106. 50

    2

    {9, 34, 32, 30, 15, 26, 48, 23, 2, 41, 1, 0, 9, 10, 25, 23, 42, 42, 46, 39, 25, 48, 39, 5, 37, 37, 7, 43, 34, 20, 14, 35, 7, 21, 0, 36, 45, 0, 28, 36, 27, 2, 28, 18, 38, 31, 2, 40, 45, 41}

    "00010010000000100000110000100101110100010000000000"

    Returns: -1

  107. 5

    2

    {1, 0, 0 }

    "101"

    Returns: 2

  108. 8

    2

    {1, 2, 3, 6, 5 }

    "10111"

    Returns: 4

  109. 2

    1

    {0, 0 }

    "10"

    Returns: 1

  110. 50

    1

    {6, 6 }

    "10"

    Returns: 1

  111. 2

    1

    {1, 1 }

    "10"

    Returns: 1

  112. 50

    1

    {1, 1 }

    "01"

    Returns: 1

  113. 50

    2

    {0, 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, 35, 34, 33, 32, 31, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 49, 48, 49 }

    "00000000000000000000000000000000000000000000000000"

    Returns: 47

  114. 10

    3

    {1, 1 }

    "01"

    Returns: 1

  115. 2

    1

    {0, 0 }

    "01"

    Returns: 1

  116. 10

    1

    {0, 0 }

    "10"

    Returns: 1

  117. 5

    1

    {1, 1 }

    "10"

    Returns: 1

  118. 3

    1

    {1, 1 }

    "01"

    Returns: 1

  119. 10

    1

    {0, 0 }

    "01"

    Returns: 1

  120. 10

    2

    {0, 0, 0, 0 }

    "0010"

    Returns: 2

  121. 5

    2

    {1, 1 }

    "10"

    Returns: 1

  122. 50

    30

    {1, 1 }

    "01"

    Returns: 1

  123. 50

    1

    {0, 0 }

    "01"

    Returns: 1

  124. 10

    2

    {5, 5 }

    "01"

    Returns: 1

  125. 50

    4

    {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 0, 1, 16 }

    "01111000111101111010"

    Returns: 19

  126. 6

    3

    {0, 1, 2, 3, 4, 5 }

    "111011"

    Returns: 4

  127. 9

    5

    {0, 4, 8 }

    "000"

    Returns: 1

  128. 11

    5

    {0, 9, 0 }

    "110"

    Returns: 2

  129. 4

    2

    {0, 0 }

    "01"

    Returns: 1

  130. 50

    7

    {34, 14, 45, 25, 28, 5, 27, 13, 22, 4, 9, 0, 43, 32, 34, 26, 16, 16, 25, 49, 18, 25, 18, 34, 36, 35, 1, 38, 28, 19, 18, 12, 31, 20, 0, 16, 24, 13, 2, 24, 24, 39, 9, 24, 46, 7, 4, 37, 49, 48 }

    "00101011101011001101101000001111110101000010110010"

    Returns: 49

  131. 10

    2

    {0, 0 }

    "01"

    Returns: 1

  132. 5

    2

    {1, 1 }

    "01"

    Returns: 1

  133. 50

    10

    {20, 31, 21, 22 }

    "0010"

    Returns: 3

  134. 10

    1

    {3, 3 }

    "10"

    Returns: 1

  135. 10

    3

    {0, 3, 9, 6 }

    "0000"

    Returns: 3

  136. 50

    5

    {0, 5, 10, 15, 20, 25, 30, 35, 40, 45 }

    "0000000000"

    Returns: 9

  137. 9

    6

    {1, 1 }

    "01"

    Returns: 1

  138. 10

    1

    {4, 7, 8, 2 }

    "0110"

    Returns: 2

  139. 20

    2

    {0, 0 }

    "01"

    Returns: 1

  140. 50

    1

    {1, 1 }

    "10"

    Returns: 1

  141. 6

    4

    {3 }

    "0"

    Returns: 0

  142. 10

    3

    {3, 5, 9 }

    "111"

    Returns: -1

  143. 50

    1

    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

    "00000000000000000000000000000000000100000000000000"

    Returns: 35

  144. 5

    2

    {0, 4, 2 }

    "000"

    Returns: 2

  145. 20

    5

    {1, 2, 3, 4, 8, 7, 6, 0, 9 }

    "111111100"

    Returns: 7

  146. 10

    8

    {1, 7 }

    "00"

    Returns: 1

  147. 50

    50

    {1, 1 }

    "01"

    Returns: 0

  148. 9

    2

    {1, 1 }

    "01"

    Returns: 1

  149. 5

    3

    {0, 4, 1, 2, 3 }

    "11011"

    Returns: 1

  150. 8

    2

    {0, 1, 0 }

    "001"

    Returns: 2

  151. 2

    1

    {0 }

    "0"

    Returns: -1


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: