Statistics

Problem Statement for "OrderOfOperations"

Problem Statement

Cat Noku has just finished writing his first computer program. Noku's computer has m memory cells. The cells have addresses 0 through m-1. Noku's program consists of n instructions. The instructions have mutually independent effects and therefore they may be executed in any order. The instructions must be executed sequentially (i.e., one after another) and each instruction must be executed exactly once.

You are given a description of the n instructions as a String[] with n elements. Each instruction is a String of m characters. For each i, character i of an instruction is '1' if this instruction accesses memory cell i, or '0' if it does not.

Noku's computer uses caching, which influences the time needed to execute an instruction. More precisely, executing an instruction takes k^2 units of time, where k is the number of new memory cells this instruction accesses. (I.e., k is the number of memory cells that are accessed by this instruction but have not been accessed by any previously executed instruction. Note that k may be zero, in which case the current instruction is indeed executed in 0 units of time.)

Noku's instructions can be executed in many different orders. Clearly, different orders may lead to a different total time of execution. Find and return the shortest amount of time in which it is possible to execute all instructions.

Definition

Class:
OrderOfOperations
Method:
minTime
Parameters:
String[]
Returns:
int
Method signature:
int minTime(String[] s)
(be sure your method is public)

Constraints

  • n will be between 1 and 50, inclusive.
  • m will be between 1 and 20, inclusive.
  • s will have exactly n elements.
  • Each element of s will have exactly m characters.
  • Each character of s[i] will be either '0' or '1' for all valid i.

Examples

  1. { "111", "001", "010" }

    Returns: 3

    Cat Noku has 3 instructions. The first instruction ("111") accesses all three memory cells. The second instruction ("001") accesses only memory cell 2. The third instruction ("010") accesses only memory cell 1. If Noku executes these three instructions in the given order, it will take 3^2 + 0^2 + 0^2 = 9 units of time. However, if he executes them in the order "second, third, first", it will take only 1^2 + 1^2 + 1^2 = 3 units of time. This is one optimal solution. Another optimal solution is to execute the instructions in the order "third, second, first".

  2. { "11101", "00111", "10101", "00000", "11000" }

    Returns: 9

  3. { "11111111111111111111" }

    Returns: 400

    A single instruction that accesses all 20 memory cells.

  4. { "1000", "1100", "1110" }

    Returns: 3

  5. { "111", "111", "110", "100" }

    Returns: 3

  6. {"01111001100000101001","00011001011111111000","00010100011001000101","01100100111111001011","10000001101111101100","01000100100101101001","11110110110010110000","01010001100110101110","10101110000100110110","10011111111111111100","10001100101011111000","10011000001101110110","11111111100110111101","01011010011001100100","00111001110001111110","10010001110101010011","11100010110001111111","01010110100011001110","10001111100111100011","10110111011110011011","01111000110000101010","01000000110011001100","10001000111011111110","11010111011011011101","11100100011011101011","10011110011010010111","01010000101111100110","10100011101000111101","11101110100000000011","01100101011101011010","00110101101101110010","01100000011001111100","00101111111010001011","11000001111111110101","11001011100100010000","11101101000100101011","10110011100111111111","11111111111101100111","10010100001111010110","01011001000011101110","11010001010001001011","00111111111110011111","11010010101010001101","01011111101010011011","10010110101101111101","00111010101011111111","01110101110110101110","10011111011011111010","10010101101100011000","01101011111110001111"}

    Returns: 76

  7. {"10010000000000000000","01001100110000000011","10000000100000000011","01100101000000000101","00000000000000100100","00011000110100000000","00000010000101000000","11000000000010000000","00000001000000000000","00100010000100111110","00100000010100000000","00000000100000000000","00011111001000000010","00010001000000000011","00000001001000000000","00000010011100000010","00000000010011000000","00000001100100100100","10000100001000000000","10010000000000000000","00010000011100000101","01010001100000101000","00100000001000001000","00000000000000000000","11000000001100100001","00000100010010000001","00000000000001010100","00000010001001110110","00000000100000100000","00000001010001000000","01001000000000000000","11010000000110000000","10000000010000010101","10010010000100101000","10000000100000001100","10000001000000000000","00000000000000000101","01011011000101010000","01000000000010000000","01001000100010000000","00000000110010001000","01101000100000000000","00000001010110000000","00001101000001010001","00000001001100010000","00000010110000000000","00010001001000000000","10000001001000101001","00000000001010100000","00001001001011000010"}

    Returns: 20

  8. {"11110001111111111111","11001110111011011111","00111010111111100001","11001111101011110111","10111011111110100111","11001111111111111010","10101001111011111001","11001111111001001100","11111101111111111111","11101111001110111111","10111001011111110011","11111111111101011101","10111111101110011111","11111011011111110111","10111111011111111101","11111111001111010111","10111111111110100110","11011111111010111111","11110101111001110111","01111111111111111101","01111101111110111110","00111111111111111111","11111101110111111111","11111011111101111111","11111111111110101111","11001011001110111111","10111111111111110111","11111110111111111111","11111111111111110111","11011000100111111111","10101101011110101010","11111011110111111111","11101110011111111111","11111110101010111011","10101101111010111111","11111100111001110101","10010011111111111111","11100011101011111111","10011011111111110101","10110110111101111111","01111010011011101011","11111100110111011111","11110111111110000111","11111111111111111111","00011010011111111101","11011111010111111101","11110111111111101011","11101111111111011111","01110111101001111110","10100111111110111100"}

    Returns: 160

  9. {"00001010000000100000","00010101000110000001","00010000001000000010","00000001100000000100","00000001000010000000","10001001010000100101","00000100110010000000","10001010001000100010","00000100011000000010","00000000000000010000","00010001001000000011","00010011000011010000","01000001000000000000","00000100111001000010","00000000000000011000","00000010000000001000","00000001001000000000","01111000000011010000","00101110000010000000","00010101000000010101","00000000000100000010","00000000001000000100","00100010010000000110","00011001101000000110","00000000011000001011","10000010000000001110","00100000100000010011","00100100100000000000","11000101010001000000","00000000100100000000","01110000100001000100","00010001000000101001","00010100000000000010","00010000000000000100","00000010000000000100","00000010100000011001","01000000000000000100","10001010000100000000","00010000110000100000","01001100100000000001","10010000110001000100","00100010100010010000","10000001010000010100","10000000000000101110","00001101000001000000","00000000100000010101","00100100000001011000","00000000001101010000","11000000001000110001","10000001001001100000"}

    Returns: 20

  10. {"11111111111111111100","11111111111111111111","11111111111111111111","11111111111111111111","11111111111111111111","11111101111111111111","11111111111111111111","11111111111111111111","11111111111111111111","10111111011111111111","11111111111111001111","11111111111111110111","11111111111111111111","11111111111111111111","11111111111111111111","11111111111111111111","11111111101111011111","11111111111111111111","11111111111111111111","11111111111111111111","11111111111111111111","11110111101111111111","11111111111111111111","11100111111111111110","01111111111111111111","11111111111111111111","10110111111111111111","11111111111111111111","11111111111111111111","11101111101111111111","11111111111111111111","11111111111111111101","11111111111111111110","11111111111111111111","11111110111111111111","11111111111111111111","11111111111111111111","11111110111111111111","11111111111011111111","11111111111111111111","11111110111111111111","11111111111111111111","11111111111111111111","11111111111111111111","11111111111111110111","11111111111111111111","11111111111011111111","11111111111111111111","11110110111110111111","11111111111111111111"}

    Returns: 294

  11. {"00001010011101100100","00001111101000101101","01100011111100110111","01101010101110100101","10000111110101110011","00000110111011111100","00110011010001111110","01101101001001001111","00111101111111100110","01000000110100010010","10011011111101000111","01111010101101111010","01011011100100101110","01101000000000110110","00110111110110001111","00100011111001111001","11000110100111111111","00011010000111101110","11001110101010000111","11000010111000001001","11110011010101001000","01110110111111010000","00010000101101101110","01101111111110100001","11010100111100011110","11011000111011011000","00011100110110011111","11111101001110101111","11110011001000010001","11101101111001011000","10101100101111000000","10010011011101011010","00100011011000001111","11001110010010110111","11111001111010010110","11101001000101110101","01101110011110101011","01010100011110001111","01010110011110101110","00011100110010010001","01111101101111110110","01011011001110111100","01110110110010110010","11000100010000001111","00000101011001110011","11101011100011110011","10100110011011010011","01101101100000111101","01100110001000111100","11111000011010111100"}

    Returns: 70

  12. {"10000000001000000100","10000000011101001010","00001010000000000000","00000000000000000000","01001110000010000010","00000000000000000000","10100001100000000000","00000001000000000100","00000000110000000100","01000000010000000000","00010000000100000000","00000000000000000000","10000001000010000000","00000001000000000100","00100100000010000100","10000001000000000001","01000000000100001010","00000001000000000000","00001000010001101000","01000000001010010000","10100000000001001001","00000000000100000000","00011100000101000000","01100000000000101001","10000000000100100000","00010101001001001001","10000000000000010001","00000101000000000001","00000000000000000100","00000000010000001010","10000000000000001000","00100000110000000010","11000010000000000000","00000010100100100010","10001010000000000000","00000000100010010000","00000000010000000010","01001000010110001100","00000000010000000100","00000100000000000010","10000000010000010010","01000101010100000000","00000110000000010000","00000000100000000000","01000010001000001010","00000100100000000100","00001001100000100000","10010000000001000000","00000100000000000000","00000000000000000001"}

    Returns: 20

  13. {"11111110110111111001","11111111111111010111","01111111111111111100","11111011111011111001","01110110000111111101","11111111111111111111","11111111111111011110","01101111111110001011","11011111111111111001","11111110111111111110","01011011111111111011","11101111111111111111","11111111010110111111","10111110011111100001","10111110011111101110","11101111111111111111","11100111101101111111","10111111111011111111","11110111111111111111","11101111011111111010","11011111010111111111","01111111111101111011","11010110111111111101","11011111111111111111","11111011010011111001","01001111111111111110","11111111111111110111","11111110011111111010","11111111011111011101","11011111111111111111","11111110101100111111","11111011111111110101","11111101111100111111","10111110111111110100","11111111011011110111","10111110111111101110","11111011111011111111","11111111111111111110","01010111111011110111","11111011111110111111","11110111111111111111","11111111110111111011","11111111111111110111","01101101111011000010","01111111111111110011","11111111111111111111","11111010110010101011","11110101111101010101","11111111011011000111","11011111111111111111"}

    Returns: 148

  14. {"11111111111111111111","11011111111111111111","11111110011111111111","11101111110011111011","11111111111111111111","11111111111111111111","11111111111111111100","11111111111111111111","11111111101111111111","11111111111111111011","11111111111111111111","10111111111010111111","11110111111111111110","11111111111111111111","11111111111111111111","11111111111111111111","11111101101111111111","11111101111111011111","01111011100111111111","11111111111001111111","11111111111111111111","11111111111101111111","11111111111111111111","11111011111111101111","11111111011111111110","11111111111111111111","11111111111111111111","11011110111111111111","11011101111111111111","11111111111111011111","11111111110111111111","11111111111111111111","11111111111111111111","11101110111111110111","01101111011110111111","10111111111111111111","11111111111101011111","11111111011100111111","11111010111111111111","11111111111111111110","10111111111111111111","11111111011111111111","11111011111111111111","11111111111111111111","11111111111111111110","10111111111110111111","11111111110111111111","10111111110111111111","11101111111101111111","11111111111111111111"}

    Returns: 262

  15. {"11111111111110110111","01111111111111011011","11100111111111111111","11101111111111101111","11110101111111111111","11111010111111111011","11111111101111010111","01111111111111111110","11111111111111011011","01111101111111110111","10111111111111111111","11111110011111110011","11110111111101001111","11011111010111111111","11111111111111111111","11111111011111111111","01111111110111111111","11101110011011111111","11101011111111111111","11011111111111110011","11110011110011111111","11111111110110110111","11111101111110010111","11111111111111110110","11111111111110111111","11111111111110111110","11111111111111101111","10111110011110110111","11111111110111111110","11001011111111110110","11110011110111011111","11111111011111111111","10110101101111101111","01110111111111111111","11111111111111111111","00111111110111111111","11111001010101110111","10111111111011110101","01111110111110111011","11111000011111111110","11111111111111111101","11111111111111111111","11011111111111111111","11101101111111101111","11111110111111111111","11111111111111111111","11101111111011010111","01101110111101111001","11110111011110111111","11111111110111101010"}

    Returns: 208

  16. {"1"}

    Returns: 1

  17. {"0"}

    Returns: 0

  18. {"010010011","101000101","010010110","100010000","100000000","100111000","010111101","010011000","011000100","000100010","011100000","001110110","000000010","100001110","000001100","000000111","100100100","010000111","101011010","001000000","010011010","000000000","001010100","111110001","000011010","010000010","100000000","000000001","001011100","010010000","001011100","000000110","000000100","010001100","111000100","010110000","000001000","000111111","100010000","001000000","000000101","010100101","010010011"}

    Returns: 9

  19. {"00010","00000","00001","00000","00000","11000","00000","01000","00101","00010","00001","10000","11001","01100","00000","00000","00000","00010","10001","10000","00000","10000","00001","00000","00001","00000","10010","10000","00001","11101","10001","00001","01000","00010","00100"}

    Returns: 5

  20. {"0000100","0000010","0000100"}

    Returns: 2

  21. {"1111","1111","1011","0111","1111","1111","1111","1011","1111","1111","1111","1100","1111","0110","1111","1101","0111","1111","1111","0111","0111","1111","1111","1111","1110","1111","1010","1111","1011","1100","0110","1101","0111","1111","1011","1111","1111","1111","1111","1110","1111","1111","1111"}

    Returns: 6

  22. {"10011","00100","01110","10100","11101","00001","10000","10110","10100","10101","10100","00011","11001"}

    Returns: 5

  23. {"01010011","10010000","01110100","10000000","01001111","01001011","00110111","01001001","11101100","10101101","00011010","10100110","00000010","10000010","10010101","00000101","00001000","10011100","10100100","10001000","00010101","11001000","00001000","01010001","01000011"}

    Returns: 8

  24. {"01100111011010000","10100000010101010","11000010111100100","10010100000000010","10000101010100001","01110100000101101","00000101001100000","10011111100001000","00110000011110111","00111000011111100","01010000000100100","01010110110101100","01100101010001010","10101101101010000","11000000101000101"}

    Returns: 39

  25. {"1","1","1","1","1","1","0","1","1","1","0","0","0","1","1","0","1","1","1","0","1","0","0","1","1","1","1","0","1","0","1","0"}

    Returns: 1

  26. {"100","101","110"}

    Returns: 3

  27. {"0010","0100","0011","0111","1001","0000","0001","0000","1001","0001","0110","0000","1011","0010","0000","0101","0110","0111","1001","1011","0010","1010"}

    Returns: 4

  28. {"1111","1111","1111","1011","1111","1001","1101","1110","0110","0111","1101","1111","1110","1111","1110","1111","1001","1010","1001","1101","0101","1101"}

    Returns: 6

  29. {"0110001011010111011","0000010001001010001","1111111111011111000","0100001111111000011","1101000101101110011","1111110110110010001","1100101100101111000","0110110111101001010","1100010111100110111"}

    Returns: 87

  30. {"1111111","1111111","1111111","1111110","1111101","1101111","1111111","1111111","1111111","1111111","1111111","1110111","0101111","1111111","1111111","0111111","1111111","1111111","1111111","1111101","1111111","1111111","1111111","1111111","0111111","1111111","1110110","1111111","1111001","1100111","1111111","1001110","1111111","1111111"}

    Returns: 21

  31. {"000000000000","000000000000"}

    Returns: 0

  32. {"11"}

    Returns: 4

  33. {"00000100011100001","10101010111001001","10100011001000100","00011100000000001","11011011001000010","11110100010100011","11101000010100110","01101110000110100","00110101011000001","10010010101001111","01101001001100111","10101001111001100","01110000100111110","10010111010100011","00000000001001100","00001000010001101","10001011111010100","01000101101110010","10110011011111100","00000100000011000","11011101010110011"}

    Returns: 35

  34. {"11111001101","11111110100","10110011110","11010111011","11111011111","11111110101","11011111110","10011010001","10100010111","11110011110","01001100001","01000100100","11111101101","11000110010","00110111011","00101111111","11111111001","10111011110","11111111111","11101110010","11111101111","11100110011","01110110001"}

    Returns: 25

  35. {"0000000000010","0100010101110","1000100100100","0100000100100","0010001110000","0000010100010","0001010000100","0010011011010","0100000111001","0001000110011","1000010100000","0000001110010","0000001011000","1011100010001","0000101001100","1000000001010","1010010100000","0100010100010","1110010000100","1000010100010","0010001000000","0000010001000","0010000000000","0000100000100","0100000000000"}

    Returns: 15

  36. {"1101011010100110","0110100001101001","1100101100110100","1111111110110111","1101111111110111","1101011110010110","1111110101010101","1011101101010011","1111100111110110","0111011011110011","1110001110111011","0101110101000110","0101100111101111","1111111111111111"}

    Returns: 80

  37. {"110001111111011","110011011101111","010110011100101","111000010101100","100010101100000","000100100101110","010110011001101","001100000010010","100011001110111","101001010000110","011100010110001","101101010011000","111111011111101","111001000001110","111010010101101","100100011100010","110000010011100","010100100110110","001000010001001","011010001101101","100100000101000","111001100101000","001010010111001","000000001000000","111011110100000","001000000110101","101001010110111","010001001100101","100000110001010","010001010101101","010101001111001","001001100100101","000000111110001","111010011000010","110001101111011","100000011100010","011001001000011","001000011110000","000110011100100"}

    Returns: 29

  38. {"000011000000000001","010000000001000100","100100000000001000","000000000000000000","000100000000000000","001000000000000000","000001000000010010","100011000000110000","100000001000000000","000010000000000010","000000001000000010","001000000000100000","000000000010100000","000100000001010000","000001000000010010","000000100000000000","000010010000000000","001000000001000010","000000000001010000","000000000001000000"}

    Returns: 19

  39. {"110","011","111","111","111","101","111","011","101","111","001","111","111","101","111","111","011","111","111"}

    Returns: 3

  40. {"000001000000","000010000100","000100000010","101001000010","000000000010"}

    Returns: 11

  41. {"1111100111110101","1010110101110111","1100111111101010","1010110011101011","1101010101101111","0110101101111111","1100111111111111","1111100110011111","1001110111111110","1001111111110100","1111101101101000"}

    Returns: 112

  42. {"0111001","0111010","0100111","1010011","0010100","1001000","0101111","0010110","1000100","1101100","1001001","0110001","1010111","0010011","1011010","1111110","0011111","1010000","1101001","1011101","1010010","0111101","0110010","1001110","1110110","1010000","1110010","0010000","0000111","1001010","0101101","1011010","1010101","0111000"}

    Returns: 7

  43. {"11111111","11110111","11111111","11111101","11111111","11111110","11111111","11111111","11111111","11111111","11111111","11111111","11111111","11111110","11111111","11111111","11111011","11110111","11111110","11111101","11111101","11101101","11111111","11111111","11111111","11111111","11111111","11111111","01101111","11111011","11111111","11111111","11111111","11111111","11011111","11111111","11111111","11111111","11111111","11111111","11101111","11111111","11111111","11111111","11111111"}

    Returns: 38

  44. {"1111111111111111","1111111111111111","0111111110010011","1111111111001111","1111101111101111","1111111111101011","1111111111011111","1011101101011111","1111111111111111","1111111111111111","1101111111111111","1111111111110111","1111101110111111","1111110110111111","1111110110111101"}

    Returns: 138

  45. {"00","00","00","00","01","10","00","00","00","00","00","01","10","00","00","01","00","00","00","00","00","00","00","10","00","00","00","00","00","01","00","00","00","00","00","00","00","00"}

    Returns: 2

  46. {"00000","11010","10011","00100","10010","10001","01000","00100","00001","11000","01000","00010","00000","01001","00000","10000","00001","01000","00010","00100","10100","01000","10001"}

    Returns: 5

  47. {"01","10","01","01","11","01","10","11","10","01","01","01","10","00","11","11","01","01","01","11","01","01","10","10","01","11","11"}

    Returns: 2

  48. {"11111111111111111111","11111111111111111111","11011111111111111111","11111111111111111111","01111111111111111111","11111111111111111111","11111111111111111111","11111111111111111111","11111111111111111111","11111111111111111111","11111111111111111111","11111011111111111111","11111111111111111111","01111111111111111111","11011111011111111111","11111111111111111110","11111111011111111111","11111111111101111111","11111111111111111111","11111111111111111111","11111111111111111111","11111111111111111111","11111111111111111110","11111111111111111111","11111011111111111111","11111111111111111111","11111011111111111111","01111111111111111111","11111111111111011111","11101101111110111111","11111111111111111111","11111111111111111111","11111111111111111111","11111011111111111111","11111111111111111111","11111011111111111111","11111111111111111111","11111111111111111111","11111111111111111011","11111111111111111011","11111111111111111111","11111111111011111111","11111011111111111111","11111111111111111111","11111111111111111111","01111111111111111111","11111111111111111111","11111111111111111111","11111111111111111111","11111111111111111111"}

    Returns: 298

  49. {"11","10","11","11","11","11","11","11","10","01","11","00","00","00","10","01","11","10","11","10","00","10","11","10","01","11","01","10","10","11","00","11","01","00","10","10","11","00","01","10","00","10","01","10","11","10","01","10","01","00"}

    Returns: 2

  50. {"00","11","01","00","01","00","00","01","10","00","10","01","01","00","00","00","00","11","00","00","01","10","00","00","11","00","00","01","10","00","10","01","10","10","10","01","00","10","01","00","00","00","11","01","00","10","00","00","00","11"}

    Returns: 2

  51. {"1011101000","0000011000","0010000000","0001010001","0100000000","1010000000","0100100010","0000000000","0101100000","0000010010","0010100000","0001001010","0000001000","0001000000","0001111000","0000100000","1000000000","0100100001","0000000000","1001010010","0000011001","0000000001","0000000010","0000101000","0100000010","0010000001","1000001000","0000011000","0100000000","0001001000","0000000000","0100000001","0010010000","0001100001","0100000010","0010000100","0000100000","0000010000","0000100011","0001001000","1000001010","1010001100","0010001010","0000110011","0000000000","0000010011","0010010100","1010011100","0000010000","1010000000"}

    Returns: 10

  52. {"0000","0100","0000","0000","1110","0100","0000","1000","0010","0000","0000","1100","0100","0000","1110","0100","0000","0000","1000","0000","0000","0000","0000","0001","0000","1000","0000","0000","0000","1000","0000","1000","0000","0100","0010","0000","0001","0000","0000","0100","0010","0100","0000","1011","0000","0000","0000","0000","0000","0000"}

    Returns: 4

  53. {"000100","000000","000100","000000","000000","110010","000001","000010","000001","100000","000000","000110","000110","011000","001000","000000","000011","000100","000000","010010","100100","100101","000010","010000","000010","000000","100000","000000","000000","000010","010000","010000","000000","000000","100110","010100","000000","001010","000000","000011","110001","000000","100000","010000","000010","001001","100000","000000","000000","101000"}

    Returns: 6

  54. {"1110101","0011101","1001110","0010100","1001111","0011101","0001111","0110000","1110001","0010001","0111001","1101010","1110100","1001011","0100010","0100001","0010100","1000010","0110101","0100001","0101100","0110010","1001100","1011110","1011001","1000101","0100000","0010010","0100001","0100011","1001100","0000111","0011110","0001100","0100001","0100110","1101101","1000000","1001000","0110100","1100110","1001011","1001111","1110111","0100011","1101001","1110011","0101000","0010101","1000101"}

    Returns: 7

  55. {"1","0","1","1","1","0","1","1","1","1","0","1","1","1","1","1","1","1","1","1","1","0","1","1","1","1","1","0","0","1","1","0","1","1","1","0","1","0","1","1","0","1","0","1","0","1","0","0","1","1"}

    Returns: 1

  56. {"000000","010100","000100","000000","000010","100001","100100","000101","100001","100000","100010","000101","000000","001001","111000","000111","001000","001011","000100","001001","000111","000001","000100","000001","010010","111100","000100","001000","000101","000011","001000","101000","001101","000000","101000","101100","101000","010011","000000","100100","000100","010000","010101","100000","010000","101001","000001","100010","000001","101000"}

    Returns: 6

  57. {"1000111101","0001101000","0011110000","1101110010","0101000000","1010111101","0011011001","0100110010","1110000110","0001101010","1000110001","0111011110","1101111111","1001100111","1011011010","1001000010","1001010100","1000001110","0000110110","1011010001","0001100000","1101010001","0111001100","0111001011","0000011100","1100010101","0100001001","1000010101","0111100001","0100010101","0010010010","0000001010","0000110110","0101000011","1111000111","0010001101","1011001111","1101001010","1011110110","0111101101","1101110010","1010100000","0110001100","0110010011","1111100001","0001111111","1001100011","1010011111","0110110101","0001000100"}

    Returns: 12

  58. { "110000", "111000", "001100", "001110", "000011", "000111" }

    Returns: 8

  59. { "11000", "00111", "10111", "01111" }

    Returns: 11

  60. {"00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "10010000110000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "10101001110000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "01111011111000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "10010011000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "01101001000000000000", "00000000000000000000", "11101010100000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "11000001000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000" }

    Returns: 20

  61. {"00011100101010011000", "11010101111100000110", "00011010100010010000", "11011000001011001010", "00001100110011110111", "10001101111011111100", "10101110110000100010", "01111101100110100000", "10001101111011110111", "00100111100110100000" }

    Returns: 74

  62. {"00100100110000010000", "00100001010000110011", "00011001001110001010", "00100111110101100101", "10001011100101000100", "11111011111010011111", "10100001001101101001", "01000101010101001010", "10010111101111011101", "01100001011111100011", "11011100001100011001", "11100101110110111111", "10111100100100000010", "10101110010111011111", "01111101110101100011", "00010010110100101010", "10100100011110011101", "11011100000101100001", "10010011001000000001", "11100101100101111011", "10100011101010111001", "11100010000001100011", "00111000101000010010", "11111100010011101001", "11001000110101111110", "10110001110110001001", "11011110111001010010", "11111111000000000101", "10101011000100001110", "11010100100101000110", "10110110001011000100", "10011000000000110000", "00001101000101111101", "10001100100100111010", "01010001011011111111", "01001010011101110011", "01100100000110110111", "00010010100110110101", "01010110111010110001", "11010001110010011110", "00101111000111001111", "01110111110010110011", "01001010101000010110", "10001011001111100010", "10101101011001010001", "00010010111001001100", "11111101001100010100", "01100111100111111001", "01100010110110110000", "01001010111000011000" }

    Returns: 54

  63. {"0010111010", "0010001111", "1111111010", "0000100101", "0101011100", "1000010100" }

    Returns: 24

  64. {"1110", "0011", "1100" }

    Returns: 6

  65. {"1101", "1101", "1111", "0011", "1110", "1100", "1100", "1111" }

    Returns: 6

  66. {"11101100110000101100", "00110000000100101101", "11110110101010001010", "01010100111100010100", "00011001101111001001", "01001011111011101000", "10000001110001000100", "11011111001010100100", "01001101111110110001", "00110110100100000000", "10001010011010001101", "11110110001111000000", "10000100010010001011", "00111000110011100110", "01100101001101000111", "01000011100110101001", "11100111101001010101", "00100010001101110001", "01001111101001000001", "01000001001100100011", "11011111100000000100", "01100111000001100010", "01100000101011010110", "11110110010011001100", "10000001101101011100", "11001111110000110100", "10110011000100011100", "11010001100111111010", "00101110110110101001", "01100110010001011010", "01110000100110110001", "00000101110111001010", "00011100001011010110", "10100010000001011011", "01100010111100000100", "00101001110111111110", "00100110000100110100", "01110110100010100000", "00111011010000100111", "11011010110001001001", "00000110111110111001", "01001111001000011110", "11010111100010000000", "10110101101101100001", "01110001000011111100", "10100101000010010001", "01100100001000101110", "11100101011100111111", "01010100001011100110", "11000100100010100111" }

    Returns: 58

  67. {"10011110000110001001", "11111000011110010101", "11010111100110011111", "00011000010111001001", "01110110111110110000", "11000100001100001010", "11101011001100101001", "00011000101111001101", "10111101001010111010", "10111110011100010010", "00110001000000110111", "01000000101001110010", "00001101011110110101", "01101010001111111100", "01000001110100001001", "10100010011101101100", "01100011100100010011", "10010110111101011101", "10010100001000111001", "11111101000000101000", "10110011101000111010", "11000010011111110111", "01001001110110000000", "00110011111010111001", "01100000101011001101", "01001001001110111010", "01001101011010001000", "10001000011000110010", "00011001100100010110", "00110010110110000010", "10101010001111100011", "01111001110010111011", "00011001101111001101", "01000110100101011110", "00000100111111101011", "00111111010010000111", "00011000000110100111", "11111110000111001010", "00000110000111010111", "00111111110101011001", "10000010100111010110", "00011011100110001010", "10011011001010011000", "00110011000110011001", "00010001101010001110", "11001110010001001111", "01010010010001110001", "10011110010100110111", "11110000111100100010", "11000100010011110110" }

    Returns: 68

  68. {"11101", "00011", "11100" }

    Returns: 11

  69. {"11111000000", "00001111110", "00010111111" }

    Returns: 49

  70. {"1011110010", "0100101011", "1110001101", "0001000111", "0100101100", "0110100001", "1010110000", "0011011011", "0100100110", "1111010111" }

    Returns: 22

  71. {"0011100", "1110000", "0011111", "0111111" }

    Returns: 15

  72. {"01001001010", "10101111101", "00011100001", "11101001100", "10110110000" }

    Returns: 31

  73. {"00010010000000000000", "00000000000000010100", "00000000000001010000", "00000010000010000000", "01000000010000000000", "00100001000000000000", "00000000001000000001", "00010010000000000000", "10000010000000000000", "00000000000010001000", "00000000100100000000", "00000001010000000000", "00100000001000000000", "00110000000000000000", "00000001000000010000", "00100000010000000000", "00100000000000000010", "00000001010000000000", "00000000000001001000", "00100000000100000000", "00000000010001000000", "01000000000000000001", "00001000000000000100", "00001000000000000010", "00000000001000010000", "00000010000001000000", "10000000000100000000", "00000000000001001000", "00100000001000000000", "01000000000000001000", "00000100000000000000", "00001001000000000000", "00000100000000001000", "00000010010000000000", "00000000000001000100", "00001000000000010000", "00100100000000000000", "00000001000000100000", "00001000000000100000", "00010000001000000000", "00000001100000000000", "00000000000000001010", "00001000100000000000", "00010000000100000000", "00000000000000100001", "10000000000010000000", "00000000100000001000", "00000000000010000001", "00000010000000000000", "00000000000000100001" }

    Returns: 20

  74. {"11000000", "00110000", "11100000", "00000011", "00001100", "00001110" }

    Returns: 12

  75. {"001100", "110000", "111000" }

    Returns: 6

  76. {"1011110001110", "0000011111111", "0011010101010", "1001100100111", "0000101011000", "0011001100101", "1011111000010", "1100100100001" }

    Returns: 41

  77. {"111000000", "001110000", "000111110", "000001111" }

    Returns: 23

  78. {"00100111011000010000", "01101010110010111011", "11001011111110010100", "11010001110001000111", "01001110111100100010", "11010000010011001110", "01011001101101101010", "01110011010111101110", "11110011010010111111", "10111111111100101000", "11011001011100110111", "10000101111001000101", "00010101101110110000", "00010101001111010110", "01110111111010010000", "00010000001010001011", "10011111000100101011", "11001110110101110010", "11000011110011101001", "01011010000111101100", "01001010000100011000", "01101000111101101100", "01111110001011001110", "01101001011001011100", "10000011111101010000", "00011101001001000001", "01000101010101011110", "01011000010011011110", "01110001001001010011", "10010101001100000010", "10000101001111001001", "10100000111111011110", "10000110111111111001", "11100101100011111110", "11000011011110010011", "01000110100100011100", "00010100010001101110", "11011001110100110100", "10101111001011111100", "00101001100101101110", "01000001010000001101", "00011100101000101110", "00011011000000110011", "11100111001011100100", "00000111011111100010", "01000111110110111010", "11110100010110001011", "01001100010111011001", "10011111000101101000", "10100111000011001000" }

    Returns: 64

  79. {"11001000", "00111111", "10101001", "00100110", "10101110" }

    Returns: 16

  80. {"1101", "1101", "0011" }

    Returns: 8

  81. {"00001011010010000000", "10000010010100010100", "10000011010110000000", "10001011000000011000", "00001011010110010000", "00000010000100010100", "00001011000110011100", "10001001000000000100", "00001011000010000000", "10001011000000011000", "10001001000010000100", "10001010010100000100", "00001000010000011000", "10001011000000001000", "00000010010100010000", "00000010000110010100", "00001000010000000100", "00000000010010000100", "00000001000010000100", "10001011010000000100", "00001001000110010100", "10001001010100011100", "10000011010110000000", "00000000010110001100", "10001001010000000100", "10001000000000001000", "10001001010100011000", "10000010000010001100", "00000001000100010100", "10000010010110001000", "00000000000010011000", "00001000010100011100", "00001000000010000100", "10000011010110010000", "10001000000110011100", "10000001000000000000", "00000010000010001100", "10001001000100010100", "10000000000110000000", "00000000010010011000", "00001000000000000100" }

    Returns: 12

  82. {"01000101011100011001", "01111110110000101010", "00111101001110111101", "10110101111100000010", "10001101000111001010", "10000000011110100111", "11001011100111000111" }

    Returns: 116

  83. {"101010", "111111" }

    Returns: 18

  84. {"00101", "11011", "10010", "00101", "11010" }

    Returns: 7

  85. {"101110000", "001110000", "110000000", "000110000", "000000011", "000001100" }

    Returns: 15

  86. {"01011110010100000100", "11011001101101110111", "11100110001100100111", "01011010110001111100", "01101111010100100001", "11111000111001101111", "11111110000000010001", "00100101010011111011", "00000001010010101100", "00101011101101110001", "11110010110001011011", "00100011010110000100", "00110011101000000010", "00101110101010111011", "00101011100010011101", "11011011101101100111", "01001010111110000100", "00000011110110000100", "01001101000010001111", "01110101110100101001", "10000110011010110111", "01010101000010001010", "10111101100100100111", "11101110110001101101", "10111100010100010000", "00011010110100111111", "10011100011000100011", "10111110110111010001", "11100111100010101110", "10011011110111010001", "01110000001011011011", "10001011101000000000", "01100100100110110111", "10100101111010111011", "01111000011001110101", "01010011010000111111", "11101111000000000010", "11111010111011110110", "11111111111001110010", "01111011010010111011", "10111011101010110010", "10110010100000101111", "01110110101110001000", "11101011110001111100", "00001001010110000011", "10101010001010111101", "10011110110011010111", "11100011111111100010", "11111111111110101100", "01100110111000100110" }

    Returns: 62

  87. {"01001010000001000010", "10010010000011101111", "10011010000001000000", "01011010111011000011", "01110001100001010101", "00000110000000100100", "01101001000100001010", "00000010000010000101", "01010010001110011110", "11110111000000000000", "10100001010000001000", "00000100000110010000", "01000000100100101000", "00000000000100001000", "01001000000100101100", "00011000000001000100", "00100001000011010010", "01101001000000101001", "00100100100101110111", "00000100010101010000", "11100011000000010001", "01000000000000011010", "11011001010000011000", "01100000110001000110", "00100001010110101111", "01010101100110000000", "11110001110100100001", "10100000110000000000", "00010111010101100111", "01001010000000010110", "00010110001100000101", "10000000010111001001", "11001111111000111101", "00000100000100110101", "01100000110010110000", "01000010101011100000", "01001001000110110001", "10101010001001101001", "10011010000000000000", "10100000010000110100", "00100000110010001010", "11000001100011000101", "10010000001001000001", "01100001001110000001", "00100000110100001000", "01110001010000000001", "00000100000010111001", "00110000101000010011", "10001101011000000000", "00010010010000001010" }

    Returns: 32

  88. {"10001111", "01001111", "00101111", "00011111", "11110000", "00001111" }

    Returns: 20

  89. {"111100000000", "000000001111", "001111111100", "000111111000" }

    Returns: 46

  90. {"0101", "1011", "1010" }

    Returns: 6

  91. {"10000011110101101100", "11000100000101010111", "11001000111111000101", "00110011010000000111", "11110101001101100100", "10011010000011111110", "00101000110100100010", "11100111011000001110", "00011100010100100110", "11000110100011110100", "11111111101011000100", "01110000001100110011", "00000101000001111000", "00100100011000111101", "01101010010011001100", "11011100100101111010", "11001010100010000110", "00111010101100010100", "11000010000011010110", "10101001001100011110", "11011111001010000011", "11111101111101111000", "11000010110010001011", "00000011100010001010", "01100111011010001110", "11111111011111000001", "00011110100101110001", "10101110101001010110", "11011101101111101111", "01101110111100110111", "01101100010101000001", "01101110001100010010", "01010010110001101001", "01010001100111000001", "01010110010000000100", "01110011011010010111", "01101110110111100011", "11100001110000110100", "10101001100000001010", "01101001101000101101", "01110001111110111101", "11011001000101000000", "11000000110010000010", "00001010001101110101", "00101000100010000101", "01010101111000101100", "01111011010010110100", "10000000010101110010", "10000000011100001111", "10100011001101011011" }

    Returns: 58

  92. {"11100", "01011", "00111" }

    Returns: 11

  93. {"00100110000111001100", "11011100110101001000", "00111101010100000000", "11100001111010010011", "11100100010100110011", "01000110001100010000", "00110000110100010110", "11010001011010010110" }

    Returns: 80

  94. {"10111110000001001011", "11010110101111011010", "01001111001001010000", "11010000010010011101", "01110101111001100001", "01100110111010000111", "10000000001000110111", "00011100011110000001", "11101001100111110110", "11011110001101010100", "10000110011110110101", "01101001001110100000", "00001101001001011010", "00100101101010011100", "11011011011011100110", "00110111111101110101", "10010000011101011010", "10001111001001101101", "11101001001001111000", "01011100001011100111", "11001100011011010110", "10000010001000100111", "00110110001111011111", "11000010100011000101", "10111110100010011011", "01100111111010110100", "11101111000110011101", "11010110101011001011", "11001011001101011110", "01100100101101001110", "10101101010111000010", "01011000011000011001", "00110100010111100000", "10110000101111110000", "01100111001000011010", "00001010000100001110", "10011110000100000100", "00010111100111000011", "11001010100011111100", "10110001000100010001", "00011111100111100000", "01111110101100110101", "00111100011100100000", "10000111110001100010", "01000000010100011011", "11000100111000100001", "11111110011111010111", "11010101100011010001", "00110110101100011101", "01101010110011010101" }

    Returns: 64

  95. {"1001", "0110", "1110", "0111" }

    Returns: 6

  96. {"00011", "11000", "01101", "10100", "10100" }

    Returns: 7

  97. {"0000000000000000", "1110011011111110", "1111110001111111", "0000100100100001", "1111111011111111", "1110111011111101", "0110011111111011", "1111110111111001", "1010111111111011", "1011111101110111", "0101101101010111", "1100000010000001", "1011110111001001", "1101011011100111", "1001110010000100", "0100111110101101", "0110011000101000", "1100100100011111", "0000010000000000", "1111111111101111", "0000000000000000", "0010001011100000", "1101101111001101", "1000000001000000", "1110101011110100", "0000000000000000", "0001010010100000", "1010000100011000", "0000100100000000", "1010110110101001", "1001110001111111", "1011101000001000", "1110001101100001", "0000001000000010", "0000000000000010", "0000100110100100", "1111011111101111", "1111100011100010", "0011010001010010", "1000000000011100", "0000000010000001", "1111111111111011", "1011010101101101", "0000000010000000", "0101100010100000" }

    Returns: 18

  98. {"10001", "01010", "00101", "01011" }

    Returns: 7

  99. {"111000", "001100" }

    Returns: 8

  100. {"0111", "1100", "0011" }

    Returns: 6

  101. {"11100", "11110", "11111", "00011" }

    Returns: 11

  102. {"111000", "111100", "000111" }

    Returns: 14

  103. {"00111", "11100", "11110", "11111" }

    Returns: 11

  104. {"000111", "111000", "111100" }

    Returns: 14

  105. {"10000000000000000000", "01000000000000000000", "00100000000000000000", "00010000000000000000", "00001000000000000000", "00000100000000000000", "00000010000000000000", "00000001000000000000", "00000000100000000000", "00000000010000000000", "00000000001000000000", "00000000000100000000", "00000000000010000000", "00000000000001000000", "00000000000000100000", "00000000000000010000", "00000000000000001000", "00000000000000000100", "00000000000000000010", "00000000000000000001", "10111100110101100000", "10110001111000111010", "11110100101010010001", "11010101110101010010", "10000011010000100001", "10001110100010011101", "01111111111011010110", "01011100010101010111", "10001010000010111110", "01101101011111001101", "00111000000011100101", "01010011001000111001", "00110000101110010000", "01000001000001100111", "10100111101110010000", "00000110101000110001", "01101111101101101000", "00010100000011010001", "00001110010011100100", "10111101100100000100", "01000000101110001001", "00011011111001001011", "00010001000001111001", "01101110101101101111", "10011110011010001100", "10011111010110000100", "10000000000100101011", "11000100010110110110", "00000100111110111011", "11101011010010011110" }

    Returns: 20

  106. {"00100000100111001010", "00000000101001001010", "00100000101111001010", "00100000111111001010", "00000000101111101010", "00000000101110101010", "00000000111101101010", "00100000111101101010", "00100000111010001010", "00100000001000100000", "00100000110101101010", "00100000111101101000", "00100000011111001010", "00100000110101101010", "00100000110011100010", "00000000101100000010", "00100000011101001000", "00100000011111101010", "00100000111110101010", "00100000101000101000", "00100000111110000000", "00000000011011001000", "00000000110101101010", "00000000111100100010", "00100000100111001000", "00000000001111001000", "00100000011100000010", "00100000111011000010", "00000000011111101010", "00100000111000101010", "00100000100010100000", "00100000111100101010", "00000000111111101010", "00100000001011101010", "00000000111011101010", "00100000101010100010", "00100000011011101000", "00000000110001000000", "00100000000101101000", "00100000111101001010", "00100000011011001010", "00000000110001101010" }

    Returns: 18

  107. {"00000110010111000100", "00100100000000000000", "00100111101000011101", "00100101000100100010", "00000111010001000010", "00010010000001011011", "10110011010001000001", "00000010110010100100", "10001100010010001000", "10000000000001000010", "10001000000000100100", "10000011000111100010", "00010111001100000110", "10000000001010100000", "10000010010010001011", "00000100000001100010", "00001111100010000000", "01000000000100010000", "00000001101100000101", "00000100111000000011", "11000000010010011000", "01100101000100000000", "01000001100100100010", "01000000001100000000", "00010010000000000011", "00010110100110101000", "10101001000010100000", "00000000000100000100", "00011010101000000001", "00000000010010000100", "10010000100000000000", "01000010000000010000", "10000000000000110100", "00000001000000000000", "01100010101100001101", "00000000010001000000", "00100000001001001010", "00000000000100100011", "01000010000010010100", "00110000000000000101", "00000000000001110000", "00010101010010000010", "00100001001111000010", "00101000001000010000", "00000000001100000000", "00001100010011000000", "00010001000100000010", "11101000000001110101", "00000001000100010000", "00010000000000000011" }

    Returns: 22

  108. {"1010001", "1110100", "0000000", "1000101", "0001010", "1110110", "1100001" }

    Returns: 13

  109. {"1100", "0111", "0011" }

    Returns: 6

  110. {"11000", "11110", "00111" }

    Returns: 9

  111. {"00000111", "11110000", "11111000", "11111100", "11111110", "11100000" }

    Returns: 14

  112. {"101", "010", "011" }

    Returns: 3

  113. {"11000000", "00000011", "00111100", "01111110" }

    Returns: 22

  114. {"11100", "00111", "10011" }

    Returns: 11

  115. {"1100", "0111", "0011", "1100", "1100", "1100", "1100", "1100", "1100", "1100", "1100", "1100", "1100", "1100", "1100", "1100", "1100", "1100", "1100" }

    Returns: 6

  116. {"1010010", "0000100", "0100101", "0111110", "1110010", "1111001", "0011111" }

    Returns: 13

  117. {"00101", "11011", "10010", "00101", "11010", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101", "00101" }

    Returns: 7

  118. {"1100", "0011", "1110" }

    Returns: 6

  119. {"111", "101", "010", "001", "111" }

    Returns: 3

  120. {"000100", "110101", "000101", "101010", "001111" }

    Returns: 8

  121. {"10000000000010000001", "00110100100001011100", "00100000000110000101", "00111001001101000000", "00001100010010000001", "00001110111000001111", "01001001010111110100", "10000101000101000110", "01010000000011000100", "10110110011100111001", "01101000010101011110", "00001100000110001110", "00100001110001001001", "00100010001000000000", "10101000101001001100", "11000000001001000000", "01010010101000000111", "00100001010000010101", "00010000111100001000", "00001011100000000110", "01100101010000111101", "00001101001011000000", "01000000100001110100", "11000000010100110100", "00100110101001010010", "01010110000010001100", "01100111001100010001", "00000001000110000010", "01111001001110000000", "01001011000001011011", "00011001010010001100", "00000111010001000111", "01000001010100101001", "01000010000000111100", "01111000001010001110", "01010101000101111000", "00000000111000100101", "00010110001000100111", "10100100101000000111", "01001011101000110101", "00010000001111101100", "00100000010011000001", "10100000011000101110", "00100010010100010000", "11101000000110000110", "01000001010001001001", "10001100011101010000", "01000111100010100100", "10000000100000111010", "00000100110010100010" }

    Returns: 36

  122. {"10000111111011111", "00100001001000000", "11110111100111101", "11111111011111110", "00000000100000010", "00000100110000100", "10111111011101011", "00001101110000000", "10110110111011101", "00011110100000101", "10111101111101001", "00101010001000001", "01111111111010011", "11111110111011100", "00010001000000000", "01111111011101111", "11011000001001100", "00000000000010000", "00000000000000000", "11101100100001100", "01111101001000100", "00001101111010000", "11111111110111111" }

    Returns: 29

  123. {"01010", "10101", "11101" }

    Returns: 11

  124. {"01011000", "00000111", "00011111" }

    Returns: 14

  125. {"1100", "0011", "0111" }

    Returns: 6

  126. {"10000000000000000000", "01000000000000000000", "00100000000000000000", "00010000000000000000", "00001000000000000000", "00000100000000000000", "00000010000000000000", "00000001000000000000", "00000000100000000000", "00000000010000000000", "00000000001000000000", "00000000000100000000", "00000000000010000000", "00000000000001000000", "00000000000000100000", "00000000000000010000", "00000000000000001000", "00000000000000000100", "00000000000000000010", "00000000000000000001", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000", "00000000000000000000" }

    Returns: 20


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: