Statistics

Problem Statement for "DrawingBlackCrosses"

Problem Statement

Pavel likes puzzles. One of his favorite puzzles is DrawingBlackCrosses. In this puzzle, the player starts with a rectangular grid of cells, where each cell is either white or black, and at most 8 of the cells are black. The player's goal is to achieve the state where all of the cells in the grid are black. To achieve this goal, a sequence of moves must be performed. In each move, a single white cell is selected and all white cells located in the same row and all white cells located in the same column as the selected cell, including the selected cell itself, are colored black. The moves are performed until there are no more white cells.

Each solution to this puzzle can be written as a sequence of cells, where the i-th cell in the sequence is the cell that was selected on the player's i-th move. Two solutions are considered to be different if these sequences have different lengths or if there's an index i such that the i-th cells in these sequences are different. You are given a String[] field representing the initial state of the grid. The j-th character in the i-th element of field is '.' if the cell in row i, column j of the grid is initially white and 'B' if this cell is initially black. Return the number of different solutions that exist for the given grid, modulo 1000000007.

Definition

Class:
DrawingBlackCrosses
Method:
count
Parameters:
String[]
Returns:
int
Method signature:
int count(String[] field)
(be sure your method is public)

Constraints

  • field will contain between 1 and 20 elements, inclusive.
  • Each element of field will contain between 1 and 20 characters, inclusive.
  • All elements of field will have the same length.
  • Each character in field will be either 'B' or '.'.
  • field will contain no more than 8 'B' characters.

Examples

  1. {"."}

    Returns: 1

    Only one possible move.

  2. {"BBB", "BBB"}

    Returns: 1

    No moves are necessary here since all the cells are already black.

  3. {"...", "BB."}

    Returns: 5

    Let's number rows and columns of the grid as follows: 012 0 ... 1 BB. The following sequences of moves are possible (the first coordinate of each cell is its row number, the second coordinate is column number): 1. (0, 0), (1, 2); 2. (0, 1), (1, 2); 3. (0, 2); 4. (1, 2), (0, 0); 5. (1, 2), (0, 1).

  4. {"....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "...................."}

    Returns: 563200757

  5. {"B..B", "B.B.", "...B", "BB.B", "...."}

    Returns: 324

  6. {".................B..", "B...................", ".....B..............", "....................", "....................", "....................", "....................", "..........B.........", "....................", "...............B....", "....................", "......B.............", "............B.......", "....................", "....................", "....................", "....................", "....................", "....................", "..B................."}

    Returns: 29420804

  7. {"....................", ".........B....B..B..", "....................", "....................", "....................", "....................", "....................", ".....B...........B..", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "..............B.....", ".................B..", "...................."}

    Returns: 559335235

  8. {"..............B.....", "..........B.........", "....................", "....................", "..............B.....", "....................", "....................", "....................", "....................", "...B................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "B.........B.........", "..........B...B....."}

    Returns: 72072101

  9. {"....................", "....................", "..................B.", "....................", ".B..................", "....................", "....................", "....................", "....................", "....................", "....................", "..................B.", "....................", "........B...........", "....................", "....................", "...............B....", "..........B.........", ".................B..", "...................."}

    Returns: 848562542

  10. {"....................", "....................", "B...............B.B.", "..........B...BBB...", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "...............B....", "...................."}

    Returns: 304137060

  11. {"....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "..B.......B.B.....B.", "....................", "....................", "....................", "....B.............BB", "...................."}

    Returns: 19425154

  12. {"...............B....", "....................", "....................", "....................", "....................", "..................B.", "....................", "............B.......", "....................", "....................", "....................", "..B.................", "....................", ".....B..............", "....................", "....................", ".B..................", "B...................", "....................", "...................."}

    Returns: 792343271

  13. {"....................", "....................", "....................", "....................", "...........B.......B", "....................", "....................", "....................", "....................", "....................", "...........B.......B", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "...........B.......B"}

    Returns: 377801959

  14. {"....................", "....................", "....B...............", ".....B..............", "....................", "....................", "....................", ".....B....B.........", "....................", "....................", "....................", "....................", "....................", "................B...", "....................", "....................", "....B...............", ".....B......B.......", "....................", "...................."}

    Returns: 391596853

  15. {".........B...B......", "....................", "....................", "..................B.", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "......B.............", "....................", ".....B....B.........", "....................", "......B......B......", "....................", "....................", "....................", "...................."}

    Returns: 371949810

  16. {"B...................", "B.......B...........", "....................", "....................", "....................", "....................", "B...................", "....................", "........B...........", "....................", "....................", "....................", "........B...........", "....................", "...............B....", "....................", "....................", "....................", "........B...........", "...................."}

    Returns: 36818007

  17. {".....B...........", ".................", ".................", ".................", ".................", ".................", ".................", ".................", "................B", ".B....BB.........", ".................", ".................", ".................", "..B....B..B......", ".................", ".................", ".................", ".................", ".................", "................."}

    Returns: 714005747

  18. {".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".B......B........", ".................", "......B..........", ".................", ".................", ".................", ".........B..B....", ".................", ".................", ".................", "............B....", "............B...."}

    Returns: 917796556

  19. {"....................", "....................", "..................B.", "...................B", "....................", "..............B.....", "....................", ".................BB.", "....................", "..........B.........", ".....B..............", "....................", "....................", "..................B.", "....................", "....................", "....................", "....................", "...................."}

    Returns: 92495501

  20. {"....................", "...B................", ".............B......", "....................", "..........B.........", "........B...........", "..B.................", "....................", "....................", "....................", "....................", "....................", "........B...........", "....................", "....................", "....................", ".............B......", "....................", ".B.................."}

    Returns: 593216624

  21. {"..................", "..................", "..................", "..................", "..................", "..................", "..................", "..................", "....B.B.B....B....", "..................", "..................", "..................", "..................", "..........BBB.....", "..................", "..................", "..................", "..................", "..................", ".................."}

    Returns: 770557031

  22. {"..................", "..................", "..................", "................B.", "..................", "..................", "....B.............", "B.........B.......", "..................", "..................", "..................", "..................", "....B.............", "..................", "..................", "....B.............", "..................", "..................", "......B...........", "...............B.."}

    Returns: 53840825

  23. {"B"}

    Returns: 1

  24. {".B"}

    Returns: 1

  25. {".", "B"}

    Returns: 1

  26. {"B.", ".."}

    Returns: 3

  27. {".B.", "..."}

    Returns: 8

  28. {"..", "B.", ".."}

    Returns: 8

  29. {"...", "...", "B.."}

    Returns: 28

  30. {"..B.", "..B.", "B.B."}

    Returns: 28

  31. {".B.", "...", ".B.", ".B."}

    Returns: 48

  32. {"....", "....", "....", "...."}

    Returns: 576

  33. {".....", ".....", "B....", "....."}

    Returns: 2304

  34. {"....", "....", "B...", "B...", "...."}

    Returns: 1764

  35. {".B...", ".B...", ".....", ".....", "....."}

    Returns: 9792

  36. {"BB....", "......", "B.....", ".B..B.", "......"}

    Returns: 31680

  37. {".....", ".....", ".....", ".B...", ".....", "....."}

    Returns: 72000

  38. {".B....", ".B....", "......", "..B...", "......", "..B..."}

    Returns: 276480

  39. {".......", "BBBB...", ".......", ".......", ".......", "......."}

    Returns: 1641600

  40. {"......", "......", "......", "......", "......", "......", "..BBBB"}

    Returns: 1555200

  41. {".......", "B......", ".......", "B.....B", ".......", "B......", "..B...."}

    Returns: 12303360

  42. {"........", "........", "....BBB.", "........", "........", "........", "........"}

    Returns: 128563200

  43. {".......", "B......", ".......", ".......", ".......", "......B", "......B", "......."}

    Returns: 134697600

  44. {".....B..", "........", "........", "......BB", "........", "........", "....B...", "......B."}

    Returns: 896192640

  45. {".........", ".........", ".........", ".........", ".........", ".........", ".........", "........."}

    Returns: 631321502

  46. {"........", "........", "........", "........", "........", "........", "........", ".B......", "B......."}

    Returns: 583129523

  47. {".........", ".........", ".........", "..B......", "..B...B..", ".........", "......B..", "..B...B..", "........."}

    Returns: 631007559

  48. {"..........", "..........", "........B.", "........B.", "........B.", "........B.", "........B.", "........B.", ".........."}

    Returns: 727573918

  49. {".........", ".........", ".........", ".........", ".........", ".........", ".........", ".........", ".........", "........."}

    Returns: 818934788

  50. {"........B.", "..........", "..........", "..........", "..........", "..........", "B.........", "..........", "..........", ".........."}

    Returns: 965837202

  51. {"...........", "BB.......BB", "...........", "...........", "...........", "...........", "...........", "...........", "...........", "..........."}

    Returns: 416795631

  52. {"BB.....B.B", "..........", "..........", "..........", "..........", ".....B....", "..........", "..........", "..........", "..........", ".......B.."}

    Returns: 609144429

  53. {".......B...", "...........", "...........", "........B..", "...B.......", "...........", "...........", ".B.B.......", "...B.......", "...........", "B.........."}

    Returns: 232883580

  54. {"............", "............", "............", "........B...", "............", "............", "........B...", "........B...", ".....B......", "............", "........B..."}

    Returns: 708910008

  55. {"...........", "...........", "...........", "...........", "...........", "...........", "...........", "...........", "B..........", "...........", ".......B...", "..........."}

    Returns: 193691487

  56. {"..B.........", "............", "............", "............", "............", "............", "............", "............", "............", "............", "...........B", "............"}

    Returns: 980818823

  57. {".............", ".............", ".............", "........B....", ".............", ".............", ".............", ".............", "....B........", ".............", ".............", ".......B....."}

    Returns: 769825799

  58. {"............", "............", "............", ".........B..", "............", "............", "............", "............", "............", "............", ".........B..", ".........B..", "............"}

    Returns: 697882452

  59. {".............", ".............", ".............", ".............", "..B..........", ".......B.....", "..B..........", ".............", ".............", "..B..........", ".............", ".............", "..B....B....."}

    Returns: 900807631

  60. {".......B.BB...", "...........B..", ".B.........B..", "..............", "..............", "..............", "..............", "..............", "..............", ".B..........B.", "..............", "..............", ".............."}

    Returns: 275885364

  61. {".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", "............."}

    Returns: 829758330

  62. {"..............", "..............", "..............", "..............", "B.B..........B", "..............", ".............B", "..............", "..............", "..............", "..............", "..............", "..............", ".............B"}

    Returns: 70916625

  63. {"...............", "...............", "...............", ".....B.........", "...............", "...............", "...............", "...............", "..........B....", "...............", "......B.B....B.", "...BB..........", "...............", "..............."}

    Returns: 14174567

  64. {"..............", "..............", "..............", "..............", ".B............", "..............", "..............", ".B.B.......B..", "..............", "..............", "..............", "...B........BB", "..............", "..............", ".............."}

    Returns: 127326791

  65. {"...............", "...............", "...............", "...............", ".B.............", "...............", "...............", "...............", "...............", "...............", "...............", "...............", "...............", "...............", "..............."}

    Returns: 106089663

  66. {"................", "................", "................", "................", "................", "................", "........BB......", "................", "................", "................", "...B............", "................", "................", "................", "................"}

    Returns: 888730031

  67. {".", ".", "B", "B", ".", ".", "B", "B", ".", "B", ".", ".", ".", ".", ".", "B", ".", ".", "."}

    Returns: 13

  68. {"....", "....", "....", "B...", "B...", "....", "....", "....", "BB..", "....", "....", "....", "....", "....", "B...", "....", "....", ".B..", "...."}

    Returns: 1573248

  69. {"......B", ".......", ".......", ".......", ".......", ".......", ".......", ".......", ".......", "......B", ".......", "......B", ".......", ".B.....", ".......", "......B", ".......", ".......", "......."}

    Returns: 80607694

  70. {"..........", ".....B....", "..........", "..........", "..........", ".BB..B.BB.", "..........", "..........", "..........", "..........", "..........", "..........", "..........", "..........", "..........", "..........", "..........", "..........", ".........."}

    Returns: 942727496

  71. {".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", "............."}

    Returns: 71632284

  72. {"................", "................", "................", "................", "................", "................", "................", "................", "................", "................", "................", ".........B......", "................", "................", "................", "................", "..........B.....", "................", "................"}

    Returns: 467745424

  73. {".............B.....", "...................", ".............B.....", "...................", "...................", "...................", "...................", "...................", "...................", ".......B...........", ".......B...........", "...................", "...................", "...................", "...................", "...................", "...................", "...................", "..................."}

    Returns: 751538197

  74. {".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", "."}

    Returns: 20

  75. {"B...", "....", "....", "....", "....", "....", "....", "B...", "....", "B...", "....", "....", "....", ".B..", "....", "....", "....", "....", "B...", "...."}

    Returns: 2122416

  76. {".......", "....B..", ".......", ".......", ".......", ".......", ".......", ".......", ".......", ".......", ".......", "...B...", ".......", ".......", ".......", ".......", ".......", ".......", ".......", "......."}

    Returns: 400742761

  77. {"..........", "..........", "..........", ".B........", "..........", "..........", "..........", "..........", "......B...", "..........", "..........", "..........", "..........", "..........", "..........", "..........", "..........", "..........", "..........", ".........."}

    Returns: 692604845

  78. {".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".............", ".....B.......", ".............", "............."}

    Returns: 337287629

  79. {"................", "................", "................", "................", "................", "................", "................", "................", "................", "................", "................", "................", "................", "...........B....", "................", "................", "................", "................", "................", "................"}

    Returns: 149356470

  80. {"...................", "...................", "...................", "...................", "...B...............", "...................", "...................", "...................", "...................", "...........B.......", "...........B.......", "...................", "...................", "...B...............", "...................", ".....B.............", "...................", "...................", "...................", "..................."}

    Returns: 889922051

  81. {"....BB.B..B...B.B.B"}

    Returns: 12

  82. {"...............B...."}

    Returns: 19

  83. {".........B.B..BB..B", "...B...B...........", "...................", "..................B"}

    Returns: 1393920

  84. {"....................", "....B...............", "....................", ".........B.........B"}

    Returns: 2386800

  85. {"...................", "...................", "...................", ".B.B..B.........B..", "...................", "...................", "..................."}

    Returns: 475640930

  86. {"....................", "....................", "....................", "....................", "....................", "....................", "...................."}

    Returns: 132018217

  87. {"...................", "...................", ".........B.........", "...................", "...................", "...................", "...................", ".........B.........", ".........B.........", "..................."}

    Returns: 745821505

  88. {"....................", "....................", "....................", "....................", "....................", "....................", "..........B.........", "......B.............", "....................", "...................."}

    Returns: 692604845

  89. {"...................", "...................", "...................", "...................", ".............B.....", "...................", "...B...............", "...................", "...................", "............B......", "..B........B.......", "..B................", "..................."}

    Returns: 17015704

  90. {".............B......", ".............B......", ".............B......", "....................", "....................", "....................", ".............B......", "....................", "....................", "....................", "....................", "....................", "...................."}

    Returns: 20873791

  91. {"...................", ".............B.....", "...................", "..............B....", ".......B...........", ".B.................", "...................", "...................", ".B.................", "...................", "...................", ".............BB....", "...................", "...................", "...........B.......", "..................."}

    Returns: 525163553

  92. {"....................", "..B.................", "..B.....B.........B.", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "..B...............B.", "...................."}

    Returns: 825759983

  93. {"...................", ".................B.", "...................", "...................", "...................", "...................", "...................", ".....B.............", "...................", "...................", "...................", "...................", "...................", "...................", "...................", "........B.....B....", "...................", "...................", "...............BB.."}

    Returns: 923768124

  94. {"....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "...................."}

    Returns: 478160041

  95. {".B...B........B....."}

    Returns: 17

  96. {"..............B..B..", "..B.............BB.."}

    Returns: 580

  97. {".", ".", ".", ".", "B", ".", ".", ".", ".", ".", ".", "B", ".", ".", ".", ".", ".", ".", ".", "."}

    Returns: 18

  98. {"BB", "B.", "..", "..", "..", "..", "..", "B.", "..", "..", "..", ".B", "..", "BB", ".B", "..", "..", "..", "..", ".."}

    Returns: 484

  99. {"B"}

    Returns: 1

  100. {"B."}

    Returns: 1

  101. {"..B"}

    Returns: 2

  102. {"..BB"}

    Returns: 2

  103. {"B...B"}

    Returns: 3

  104. {".", "."}

    Returns: 2

  105. {"..", "BB"}

    Returns: 2

  106. {"BBB", "..."}

    Returns: 3

  107. {"...B", "...."}

    Returns: 18

  108. {".BB..", "....."}

    Returns: 24

  109. {".", "B", "B"}

    Returns: 1

  110. {"B.", "BB", ".B"}

    Returns: 2

  111. {"...", "...", ".B."}

    Returns: 28

  112. {"..BB", ".B.B", "...."}

    Returns: 40

  113. {"B....", ".....", "....."}

    Returns: 288

  114. {".", ".", ".", "B"}

    Returns: 3

  115. {".B", "..", "..", ".B"}

    Returns: 12

  116. {"...", "B.B", "...", "..."}

    Returns: 72

  117. {"....", "....", "....", "...."}

    Returns: 576

  118. {".....", ".....", "..B..", "....."}

    Returns: 2304

  119. {".", "B", ".", ".", "."}

    Returns: 4

  120. {".B", ".B", ".B", ".B", ".."}

    Returns: 9

  121. {"...", "...", "...", "...", "..."}

    Returns: 360

  122. {"....", "...B", ".BBB", "....", "...."}

    Returns: 900

  123. {".....", "B.BB.", "..B..", ".....", "....."}

    Returns: 6048

  124. {"..................", ".B................", "..................", "..................", "..................", "..................", "..................", "B.................", "................B.", "..........B.......", ".....B............", "......B...........", "..................", "..................", "..................", "..................", "..................", ".................."}

    Returns: 14901671

  125. {".................B", "..................", "..................", "..................", "..................", "..................", ".......B..........", "..................", "..................", "..................", "...B..............", ".....B............", "........B.........", "..................", ".........B........", "B.................", "..................", ".................."}

    Returns: 102093556

  126. {"........B.........", "..............B...", "..................", "...............B..", ".B................", "..................", "..................", "................B.", "..................", "..................", "..........B.......", "..................", "..................", ".........B........", "..................", "..................", "...........B......", ".................."}

    Returns: 756672776

  127. {"...................", "...................", "...................", "B..................", "...................", "...............B...", "...................", "...................", "...................", "...................", "...................", ".....B.............", "....B..............", "..........B........", "...................", "..................B", "...................", "..................."}

    Returns: 997041098

  128. {"...................", "..............B....", "...................", "...................", ".................B.", "...................", ".B.................", "......B............", "...................", "............B......", "...................", "...................", "...................", "...................", "...................", "...................", "...............B...", "...B..............."}

    Returns: 268230078

  129. {"...................", ".............B.....", "..........B........", "..................B", "...................", "...................", "....B..............", "............B......", "...................", "...................", "...................", "...................", "................B..", "...........B.......", "...................", "...................", "...................", ".B................."}

    Returns: 837684001

  130. {"....................", "....................", "....................", "....................", ".................B..", "....................", "....................", "....................", "....................", "....................", "........B...........", ".....B..............", "...B................", "....B...............", "....................", "....................", "..........B.........", "...................."}

    Returns: 731659864

  131. {"...........B........", "...............B....", "............B.......", "....................", "........B...........", "....................", "....................", "..B.................", "....................", "....B...............", "....................", "....................", ".........B..........", "....................", "....................", "....................", "....................", "...................."}

    Returns: 233139315

  132. {"....................", "....................", "...................B", "...........B........", "....................", "................B...", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "...............B....", ".........B..........", "..................B.", ".B..................", "..........B........."}

    Returns: 99024276

  133. {".................B", "..................", "..................", "..............B...", "..................", "..................", "..................", "..................", "..................", "..................", "...B..............", "..................", "....B.............", "..................", "............B.....", "..................", "..................", "..................", "..B..............."}

    Returns: 997041098

  134. {".B................", "............B.....", "B.................", "..................", "..................", "..................", "..B...............", "........B.........", ".....B............", "..................", "......B...........", "..................", "..................", "..................", "..................", "..................", "..................", "..................", ".................."}

    Returns: 268230078

  135. {"..................", "..................", "..................", "..B...............", "..................", "B.................", "...B..............", "................B.", ".........B........", "..................", "..................", "..................", "..................", "........B.........", ".....B............", "..................", ".............B....", "..................", ".................."}

    Returns: 837684001

  136. {".B.................", "...................", "...............B...", "...................", "...................", "...................", "..............B....", "................B..", "...................", "...................", "...................", "...................", ".......B...........", "...................", "..B................", "...................", "...................", "...................", "..................."}

    Returns: 466278630

  137. {"......B............", "...................", "...................", "...................", "...................", "........B..........", "...................", "B..................", "...................", ".................B.", "...........B.......", "...................", "...................", "...................", "...................", "...................", "...................", ".....B.............", "....B.............."}

    Returns: 198048552

  138. {"...................", "...................", "..................B", "...B...............", "...................", "...................", "................B..", "............B......", "...................", "...................", "...................", ".......B...........", ".............B.....", "......B............", "...................", "..B................", "...................", "...................", "..................."}

    Returns: 360364558

  139. {"....................", "....................", "................B...", "....................", "....................", ".B..................", "....................", "....................", "....................", "......B.............", "...........B........", "...................B", "....................", "...B................", "....................", "....................", "....................", "....................", "...................."}

    Returns: 803074643

  140. {"....................", "....................", "....................", "....................", "..B.................", "...B................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", ".................B..", "....................", "...........B........", "................B...", "..........B.........", "...............B...."}

    Returns: 859293914

  141. {"....................", ".............B......", "....................", "..........B.........", "....................", "....................", "....................", "..............B.....", "....................", "....................", "..B.................", "....................", "....................", "....................", "...................B", "......B.............", "...........B........", "....B...............", "...................."}

    Returns: 762922467

  142. {"..................", "..................", "..................", "..................", "..........B.......", "..................", "..................", "...............B..", "..................", "..................", "..................", "..................", "..B...............", "......B...........", ".....B............", "..................", "..................", "..................", "..................", ".................B"}

    Returns: 731659864

  143. {"........B.........", "..................", "..................", "..................", "..................", "................B.", "..................", "..................", ".B................", "..................", "......B...........", "..................", "..................", "..................", "............B.....", "..................", "..........B.......", "..................", "..................", ".....B............"}

    Returns: 233139315

  144. {"..................", "...B..............", "..................", "........B.........", ".............B....", ".....B............", "..................", ".......B..........", "..................", "......B...........", "..................", "..................", "..................", ".........B........", "..B...............", "..................", "..................", "..................", "..................", ".................."}

    Returns: 99024276

  145. {"...................", "...................", ".......B...........", "B..................", "...................", "...................", "..B................", "...................", "...................", ".........B.........", "...................", "...................", "........B..........", "...................", "...................", "...................", "...................", "...................", "...............B...", "..................."}

    Returns: 803074643

  146. {"...................", ".......B...........", "...................", "...................", "...................", "...................", "B..................", "..................B", "...................", "...................", "..B................", ".................B.", "...............B...", "...................", "...................", "...................", "........B..........", "...................", "...................", "..................."}

    Returns: 859293914

  147. {"...................", "...................", "...................", "...................", "...................", "....B..............", "...................", ".............B.....", ".B.................", "...................", "...................", ".........B.........", "...................", "...................", "...................", "...................", "..B................", "B..................", "...........B.......", "......B............"}

    Returns: 762922467

  148. {"....................", "....................", "....................", "....................", "B...................", "....................", "....................", "..................B.", "............B.......", "..........B.........", "....................", "....................", "....................", "....................", ".........B..........", "....................", "....................", "........B...........", "....................", "...................."}

    Returns: 651637178

  149. {"....................", "...B................", "....................", ".............B......", "....................", "....................", ".................B..", "....................", "..........B.........", "....................", "....................", "..............B.....", "....................", "....................", ".......B............", "...............B....", "....................", "....................", "....................", "...................."}

    Returns: 792343271

  150. {".........B..........", "..B.................", "...............B....", "....................", "....................", "....................", "B...................", "....................", "....................", "....................", ".................B..", "....................", "....................", "...................B", "....................", "..................B.", "...B................", "....................", "....................", "...................."}

    Returns: 29420804

  151. {"....................", "..B.................", ".......B............", "......B.............", "....................", "....................", "...................B", "............B.......", "....................", "....................", "....................", "....................", "....................", "..................B.", "..........B.........", ".B..................", "....................", "....................", "....................", "...................."}

    Returns: 29420804

  152. {"B"}

    Returns: 1

  153. {"BB"}

    Returns: 1

  154. {"BBB"}

    Returns: 1

  155. {"BBBB"}

    Returns: 1

  156. {"BBBBB"}

    Returns: 1

  157. {"BBBBBB"}

    Returns: 1

  158. {"BBBBBBB"}

    Returns: 1

  159. {"BBBBBBBB"}

    Returns: 1

  160. {"BBBBBBBB."}

    Returns: 1

  161. {"B", "B"}

    Returns: 1

  162. {"BB", "BB"}

    Returns: 1

  163. {"BBB", "BBB"}

    Returns: 1

  164. {"BBBB", "BBBB"}

    Returns: 1

  165. {"B", "B", "B"}

    Returns: 1

  166. {"BB", "BB", "BB"}

    Returns: 1

  167. {"BBB", "BBB", "BB."}

    Returns: 1

  168. {"B", "B", "B", "B"}

    Returns: 1

  169. {"BB", "BB", "BB", "BB"}

    Returns: 1

  170. {"B", "B", "B", "B", "B"}

    Returns: 1

  171. {"B", "B", "B", "B", "B", "B"}

    Returns: 1

  172. {"B", "B", "B", "B", "B", "B", "B"}

    Returns: 1

  173. {"B", "B", "B", "B", "B", "B", "B", "B"}

    Returns: 1

  174. {"B", "B", "B", "B", "B", "B", "B", "B", "."}

    Returns: 1

  175. {"...........B........", "....................", "..........B.........", "....................", ".........B..........", "....................", "....................", "....................", ".......B............", "...B................", "....................", "....................", "....................", "....................", "...B...........B....", "....................", "....................", "......B.............", "....................", "...................." }

    Returns: 989268635

  176. {"....................", "....................", "....B...............", ".........B..........", "....................", "............B.......", "....................", "....................", "....................", ".........B....B..B..", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....B.........B.....", "....................", "...................." }

    Returns: 231834477

  177. {"........B...........", "....................", "............B.......", "..B.................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "...................." }

    Returns: 342790092

  178. {"B...................", "B...................", "..B.................", ".....B..............", "B...................", "B...................", "B...................", "B...................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "...................." }

    Returns: 880535022


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: