Statistics

Problem Statement for "CageTheMonster"

Problem Statement

Your task is to place a monster inside a labyrinth, and prevent it from escaping by placing force fields around it. A force field creates a barrier that fills an entire row or column, so that the monster cannot enter it. There is no interference between walls and force fields, so force fields freely cross through the labyrinth walls. The labyrinth consists of empty spaces, denoted by '.', and walls, denoted by '#'. Locations where you can initially place the monster are denoted by '^', and otherwise behave like empty space.

The monster can move up, down, left, and right, but not diagonally. If there is a path the monster can follow that ends outside of the map and does not go through any fields occupied by a wall or a force field, the monster will escape. Given that you get to choose the initial location of the monster, as well as the positions of the force fields, return the minimum number of force fields needed to prevent the monster from escaping from the labyrinth, or return -1 if the task is impossible. Note that force fields cannot cross through the initial position of the monster, and also cannot be created outside of the map (see Example 2).

For example, consider the labyrinth below:

.######..
.#^^^^#..
.#^^^^#..
.#^^^^#..
.##^^##..
...^^....

One way to contain the monster using only one force field is to position the monster as denoted by M, and create the force field denoted by F's:

.######..
.#....#..
.#.M..#..
.#....#..
FFFFFFFFF
.........

Definition

Class:
CageTheMonster
Method:
capture
Parameters:
String[]
Returns:
int
Method signature:
int capture(String[] labyrinth)
(be sure your method is public)

Constraints

  • labyrinth will contain between 1 and 40 elements, inclusive.
  • Each element of labyrinth will contain between 1 and 40 characters, inclusive.
  • All elements of labyrinth will be of the same length.
  • Each element of labyrinth will consist only of characters '.', '#' and '^'.
  • labyrinth will contain at least one '^' character.

Examples

  1. { ".######..", ".#^^^^#..", ".#^^^^#..", ".#^^^^#..", ".##^^##..", "...^^...."}

    Returns: 1

    This is the example from the problem statement.

  2. {".^^^^^^..", "^^^^^^^..", ".^^^^^^..", ".^^^^^^..", ".^^^^^^..", "...^^...."}

    Returns: 4

  3. { ".######..", ".#....#..", ".#.^..#..", ".#....#..", ".##..##..", "........."}

    Returns: 1

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

    Returns: 4

  5. { ".....", ".^#^.", ".#^#.", "..#.."}

    Returns: 0

    We can contain the monster by simply placing it in between the four walls.

  6. {"..........", "..........", "....^.....", "..........", "..........", "..........", ".........."}

    Returns: 4

  7. { "#....", "^#...", "#...."}

    Returns: -1

    Since we cannot create a force field in column -1, we cannot prevent the monster from escaping.

  8. { ".#.#####.", ".#.....#.", ".#..^..#.", ".#.#.#.#.", ".#.#.#.#.", ".#.#.#..."}

    Returns: 2

  9. { "#.#############", "#.#............", "#.#.###########", "#.#.#.........#", "#.#.#.#######.#", "#.#.#.#.....#.#", "#.#.#.#.###.#.#", "#.#.#..^.......", "#.#.###.#.#.#.#", "#.#.....#.#.#.#", "#.#######.#.#.#", "#.........#.#.#", "###########.#.#", "............#.#", "#############.#", "..............#", "###############"}

    Returns: 1

  10. {"^"}

    Returns: -1

  11. {"^^"}

    Returns: -1

  12. {"^^", "^^"}

    Returns: -1

  13. { "^^^", "^^^", "^^^"}

    Returns: 4

  14. { "...#^#", "....#.", "......"}

    Returns: -1

  15. { ".....#", "....#^", ".....#"}

    Returns: -1

  16. { "......", "....#.", "...#^#"}

    Returns: -1

  17. { ".....", ".....", "..^#.", ".....", "....."}

    Returns: 3

  18. { ".....", ".....", "..^..", "..#..", "....."}

    Returns: 3

  19. { ".....", ".....", ".#^..", ".....", "....."}

    Returns: 3

  20. { ".....", "..#..", "..^..", ".....", "....."}

    Returns: 3

  21. { ".....", "..#..", "..^#.", ".....", "....."}

    Returns: 2

  22. { ".....", "..#..", "..^..", "..#..", "....."}

    Returns: 2

  23. { ".....", "..#..", ".#^..", ".....", "....."}

    Returns: 2

  24. { ".....", ".....", "..^#.", "..#..", "....."}

    Returns: 2

  25. { ".....", ".....", ".#^#.", ".....", "....."}

    Returns: 2

  26. { ".....", "..#..", "..^#.", ".....", "....."}

    Returns: 2

  27. { ".....", ".....", ".#^..", "..#..", "....."}

    Returns: 2

  28. { ".....", "..#..", ".#^..", ".....", "....."}

    Returns: 2

  29. { ".....", "..#..", ".#^#.", ".....", "....."}

    Returns: 1

  30. { ".....", "..#..", "..^#.", "..#..", "....."}

    Returns: 1

  31. { ".....", ".....", ".#^#.", "..#..", "....."}

    Returns: 1

  32. { ".....", "..#..", ".#^..", "..#..", "....."}

    Returns: 1

  33. { "^....", "..#..", ".#...", "..#..", "....."}

    Returns: -1

  34. { ".####..#.......#..^.....#......#.", "....#..#..........#.....#.^....^.", "....#..#.........########........", "...######.........#.....^........", "....#............................", "....#...............#.#....#....^", "....#...............#.#....#.....", "...##...............#.#^.........", "...############.....#.#^.........", "....#...............##...........", "....#.........^....###^..........", "....#..............#.#...^.......", "...................#.#.........#.", ".....................#...........", ".^..............^....#..........^", "##........#########..............", "........##...........###.........", "............#.........^..^......#", "............######..............#", "###.........#...........^.......#", "............#...................#", "....^.......#.....^....#.........", "..^.......#########..#.#.........", ".....................#.#.........", "..................#..#.#.........", "...............############......", ".^.#...................#.........", "...#..................#######.#..", "...#...................#......#..", "..##.........#####....^#...^..#..", "...#..................##...#.##.." }

    Returns: 1

  35. { ".....^....................#.#########", "...^.....^........^.......#...^.....#", ".^.^.............^....#^..#....^....#", "#..##########...^.....#^..##........#", "#########.............#..^###########", ".....^.#..............#...#..^...#..#", "...#......^#..........#####......##^#", "..##.###..##..^.......#..^..^.^..#.^#", "..##.^.....##..^.^....#.^.....#####.#", "^..#.#####...##############...^..#..#", "######..#......########..##.####.#...", "^.^##.^.#..^^......^^.#..##.^...^#...", "...###..#..#######...^######.^.......", "...^##..#^.##########.#.###...#######", ".#####^.#.....#####...#^###^.........", ".^...#..#.......#.#...#.###...^......", ".....#.^#..^#######^..#.#.#..#.######", ".......^#...^.....#.......###########" }

    Returns: 1

  36. { ".....................####......^.....", ".............#.......#...............", ".............#.......#...............", ".............#.......#...............", ".............#.......................", ".....................................", ".....................................", ".....................................", ".....................................", ".............................####....", "...............#.....................", "...............#.....................", "...............#.....................", "...............#.....................", "...............#.....................", "...............#.....................", ".........#.....#.....................", ".........#.....#.....................", ".........#...............#...........", ".........#...........................", ".........#...........................", ".........#..............#............", "........................#............", "........................#............", "...............^........#............", "........................#............", ".................#...................", ".................#...................", ".................#...................", ".^...................................", ".........................#...........", ".........................#...........", ".............########................", ".....................................", ".^...................................", ".....................................", "....................................." }

    Returns: 2

  37. { ".^.##.....^.....", "^^^#..........^.", "...#^...........", "^..##########^^^", ".^.#....^.^...^.", "...#....#..^^...", "^#.#..^.........", "^#^^.^..^.....^^", ".#..^..^.....^..", "......^........^", ".^..^...........", "....#.##^..^^^..", "^...#^...^......", "....#.##..^^....", "....#.##....^^..", ".^..#..#....^^..", ".^^^#.#########.", ".^..#..##......^", "...^#..#^.^.....", "...^#.......^...", "....^....^......", "..#####.^......." }

    Returns: 1

  38. { ".^............^......#......^^", "...^.......^..................", ".....................^........", "...#........^.......^........#", "...#................^^...^...#", "...#............^........#...#", "...#.....^...................#", "...#..^................^.....#", "...#.......^.^.^...^.........#", ".^^#.^....^...............^..#", "...#............^............#", "....^...^........^.......^...#", ".^..........^.......^.........", "..............................", "..^...........................", ".^................#...........", ".............^....#...........", "........^...^.....#...........", "..................#...........", ".......^.....^.......^....^#..", "....^.............^........#..", ".....^...^.................#..", "................^.^......^.#^.", "......^.............###..^.#..", ".....^.....^.....^.##########.", "...^......^...................", "...^.^.........^..............", ".............^.....^.^.^.^...^", "...#...^.^..^..^..^...........", "...#........^..............^..", "...#.....^....^...^^..........", "..^#..^..^.................^.." }

    Returns: 1

  39. { "^^^.....^..", ".^...#..#.^", "........#..", ".......#...", "...^..#....", "#^...#...^#", "........^.#", ".^.......##", "..........^", "..^........", "........^..", "^.....^.^..", "...^..^..#.", "...^....^#.", ".....^...#.", ".........#.", "..^..^.....", "#....^#....", "#..........", "#..........", "#...^....^.", "#..........", "#.......^..", "#....^.....", "#^..^......", "#...^......", "#..........", "...........", "######....#", "....^.^....", ".....^.....", ".^......^.^", "...........", "#.^.#......", "#...^......", "#..#..^....", "#.^#.....^.", "#..#...#^..", "#####......" }

    Returns: 1

  40. { "...........^...............^....", "................................", ".......................^........", "................................", "....................^...........", "................................", "..^......^...................^..", "................................", "............#...............^...", ".......................#........", "......^.......^.^......#...^....", ".........^.......^.....#........", ".......................#........", "#.......................^.......", "#....^......................^...", "#.......#..........#..........^.", "#.......#.........#.............", "#.......#........#............^.", "#....^..#....^..................", "#.......#..................#....", "#.......#.......................", "........#.......^...............", ".....^..#.^...^...^.............", "........................^.......", "...........^....................", "...............^........#.......", "........................#.......", "........................#.......", ".........#^#............#.......", "........................#......." }

    Returns: 2

  41. { "^..^^.^....##.^......^.#....#....^#", "..^.........#.........#...###....^.", "....#....^###...#..##.#...#.#.....#", "........#.#.#....#..^.#.^.#......^#", "^......#..###.....#...#.###..#.^###", ".....^##.##......##...#......#^#^..", ".#....#####...##...^...^..^..#.#...", "#......#.^#......^.^...#..#.#..#.#.", ".....#..####...#^.....#....^.....#.", "#......#.^.....^....^.##....^....#.", "#..#..^##...^..###....#.^.##....^.^", ".#..^.##........^..^#.##..###....^#", ".###.^##......^..#.^#.#...#.#....#.", ".##.#^##.....##..#....##.##.#....^.", "####.......#^^...#..^.#^^...^......", "..^....^^.^#...#..#..#.....^###....", "........#.....###..#...#...#...^.^^", "..#.#......^^.#.^..###.#^......^^#^", "^.^.#...^...#^....####.#.......#.##" }

    Returns: 0

  42. { ".....#......#^#..^..#....#..###...#.", "..##..#............#..#...#.###.#.#.", ".###......#..........#...#.##^..####", ".##..^.#..^.....#....#..#...#######.", "##.#.#.###.###...#...######.###^.##.", "#..#..##......#...#...#...######.#..", "#....###.#....#.#.###.#.###.#.#...#.", "#..####..##..##..#..#.#..#.###.#..#.", "..#####...#..#..##..##....#.######..", "#####^.....#.#..##..^#....#..#.##...", "#.###..##...##.......#..###....#....", "#..##.#.###..#.....#...#^#.....#...#", "..#.#####.#...#^.#.#...#.#.##..#..##", "##.#.#.#.###..#..####..#...#####.#.." }

    Returns: 0

  43. { ".....#..#..##.#......#....#.", ".#..^#..#^#..#..#^.......#..", ".#........#...#......^..^#..", ".#....#.#.#...##.#^^.....#..", ".........#....#...#.....##..", "........#.............#.....", "#...^...##............#..#..", "#.......#.#.#...#..#....##..", "#........#...#.....#.#...##.", ".........##..##....#..#.....", ".##...#####..#.#...#...#....", "#.##.#.......^#.##..#......#", "..###..#.#.....##.###.......", "..#.#..#####....##.#.......#", ".##^.^.#..##.....#.....#..#.", "###....#^...^#.............#", "##....#..#......#..........#", ".#...#................#....#", "....#.......................", ".......................#....", "...#.....#......#...........", "#......##.#.....#..#........", ".^#....#.#............##....", "#.##......###...#..#.#...#..", "#...#....##.#...#.##....#..#", "....#....##...####..#.##..##", "....#...#..#..........#..#..", ".......#.....#......#.#.....", "......^..........#....#.#..." }

    Returns: 2

  44. { ".^.....#.#....#.#^...#.", ".....^^#.^.###....^#^..", "....#....^..#^...^.#.^.", "....##.....#.^.##....#.", "...##.^..#.#.....#.####", "^..#....##.#...#..####.", "...#.....#......#..##..", ".........##......#.#...", "......###.........#...^", ".#.#...#..##......##...", "...#^..#....##..^.#.^..", "#..#.#.#.^.#........^#^", ".^.^..#.^..#.....##....", "#..........#..^.......^", "^.......#^.#####^...^.#", "...^..^.##..#......^#..", "........#####..#.......", ".^..#......###.........", "....#......#^....#.^...", "#...##..#...^........^#", "#....#......^.........^", "##..##.^......###...^..", ".#..##.#....#.#..##...#", "....#...#..^.....#....#", "..#..#.####...^..#.....", ".#^##.##.#.....#.......", "#.###.#......##.#.#...#", "......#...^###..#.....#", "..#.........#..#.##...#", "..##.....#..##.^###..#.", ".###...^..#^...........", "#.#....#...#.......#...", ".....####......##......", ".#..###...#.#.#..#....^", "....##...#.##.#.^.^....", ".^..#..^.##.#..........", "...#..#..#....#........", "..#...#..^^...#.###....", ".#..####.....^#^...^..." }

    Returns: 0

  45. { ".....#.#......#................", ".....#.#.......................", ".................#..#..........", ".#..................#.#..#.....", ".#..#.#.............#..........", ".#....#...#....#....#..........", "......#........................", "...............................", "#....#............#..#.........", "^............^.....#.#.....#...", ".....#..##..........#.#.....#.#", ".....#...^..#....#.............", ".#...###....#....#.............", ".##...##..#..#.#...##......#...", "......##.#.............####....", "........#.........#...........#", ".................#........#....", ".#..#............##..#.#.......", "##.........#.....####.##...#...", "##.#.#.................#.......", "#..#......................#..#.", "...##..................#..#..##", "#..........#..^.......##.#...#.", "....###..........#........#...#", "....#.#..........#.......^.###.", "....#..#................#......", "....................#...#..##..", "......#.....#.#....#.......#..#", ".....#......##....#............", ".....................#.........", "...............................", "#.............#................", ".#..#........#..#..............", ".##........###..#.............." }

    Returns: 2

  46. { ".##.#..#.#........^.^.#.###....#..#.", "...##..#.#.....#.......##.........#.", "...#.^.#.^...#.^#.......#..#..#....#", "#...#......#..#.........###....#..^#", "#...^........##...#.....#..#^.#.#..#", ".....^....^..#^...#.#.....#^..#.#.#^", "...^..#..^........#.##^^..#..##.#...", "..#......#..^#......#.###.#.#.^#....", "^#...#....#..#.......##.#...#.#.....", "#...^#..^..###.#......#....##.......", ".....##^.....##.#.#........#........", "^....^.#.#^..#..#.#...##...#^.##.^..", ".###.....####.#...#...##...#...#^..#", "^.......####..###...#.#......#....#.", "...^.....^..^#^#...##.......#......#", ".................^#....#^..#...^##..", "....^..#^..^.....##.^....#..#...#..^", "^....#^.###..#.......#....#.##......", ".##^#.#..##..#^^.....####...#.###...", ".#..#.....#..#^^...##..#.#.##...#...", "#........##.#..........##.#.#..##...", "..#...#^.#.#^#......#..#...#.#.#.#.^", "..#......##.##.....##..^..##.#......", "......#..#....#.....#^^.#..###..#...", ".......#...^#.#.#...##.....#.......#", "..#.##....^.#.#.....#.#^#...##.#...#", "..#.#.#....#.......^.##.#.##..##^.#.", "..#...#....#.^......#.#.#^##..#....^", "......#....#..#...#.##....##.#^.....", "..^.#^^.#...#..#..##....#..#.....##.", "...^....##.....^#..#.....#..........", "......#.#.................#......#..", "#.###..#.^...........#^..#....^.##.^" }

    Returns: 0

  47. { "#.........^...#........##..###.##", ".##............#..#..##.#.#..#.#.", "#..#.......#......###.##..#...##.", "........#......#.######...#.#.#..", "...###..#......#.###.##..###.#...", "#..#....#...#.######....#.###...#", "#......#.###.###.#####....##...##", ".....##.#.##.##...##..#...###....", ".....##.###..###.###.#......#....", "...##.####..###..###.#...##.###.#", ".#######.........#####...##.#..##", "..#..##...#....#.##.#.#.###..####", ".....###.#...##..#..###.##.#.#.#.", ".........#...#..#....##....#..#..", "..#...#......#.#.....####.#######" }

    Returns: -1

  48. { "...##.#..##....###....#....#......", "##.#.##.##............##.....#....", "#...#.#............#..#.#.#.....##", ".....#...###..........#..#.#.#....", "....##....##...#..#.......##..#...", ".........##..#..........#.#.#..#..", "#.....#..##.#.....##.....###...#..", ".##.#.#.####......#....#....#..#..", "#.#..##.#..##....#...#.#..#..#..#.", "#######.....#......#...#..#.....#.", "#.#....#.....#....#........#......", "..#........#.#.#.#..##...........#", ".##...#.....##....................", "..#.......#........#...#..#.......", "#^..###....#......#....#.#.#...#..", "#...........#.##.##....#..##.....^", ".............#..##..##...........#", ".........#.#.....#.#.##......#..#.", ".........#..#.........#.##......#.", "...##.#..##.#..#...#..#.#..#..#..#", "..........#....#...#..#.####.###..", ".##.#.#...#..#....##..###.#.###...", "..#.#.#...#..#........#...#..###.#", "..##..#......#...#......#.##..#..^", "...#.#.#.....#..#.......#..#.#....", "#..#.....##.#.........#.#..####..#", "......#..#..#....#..##..#....###.#", ".##...##....#....#..###.#..##..#..", "...#..#....##.......##..#...#..#.#" }

    Returns: 2

  49. { "........................", "............#...........", "........................", "............#...........", "........................", "........................", "........................", ".....^..................", "........................", "........................", "........................", "........................", "........................", "........................", "........................", "........................", "........................", "........................", "........................", "......................#.", ".......#..............#.", "........................", "........................", "........................", "........................", "........................", "........................", "...#....^...............", "........................", "..............#.........", "........................", "........................", "........................" }

    Returns: 3

  50. { "#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#", "^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^", "#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#", "^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^", "#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#", "^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^#^" }

    Returns: 0

  51. { "#############.############", "#############.############", "#############.############", "#############.############", ".............^............", "#############.############", "#############.############", "#############.############" }

    Returns: 4

  52. { "......#....................", "...........................", "........................#..", "....#.....#...........#....", "...................#.......", "........#.......#.#...##...", "#..........................", "...........................", "...#.......#........#....#.", "........^..............#...", "...............#..#........", "...........#...............", "...#.......................", "...........#...............", "#...........#.#.......#....", "....#.........#....#.......", "..........#................", ".........#......#.#......#.", "...........#.........#.....", ".....#.....#...............", "............#..............", "..........#................", "..............#......#.....", "...........................", "...#...............#.......", "......#...#....#.....#.....", ".......#...........#.......", "...........................", "...........................", "...................#.......", ".................#.....#...", "..#........#.......#.......", "..#........................", "...........#.#.............", "...........................", "..........................." }

    Returns: 3

  53. { "#......................#....", "..........#.#.............#.", "............................", "..............#.......#.....", "....................#...#...", "........................#...", ".....................#......", "...#..#.#...##....#.........", "...................#.....#..", "..#..........#..............", "...........................#", "............................", ".....#.................#....", "........^............#....#.", "..........#.....##........#.", "..#............#.#.....#..#.", ".............#.........#...#", "...................#...#....", ".......................#.#..", "......#.....................", ".......................#....", "............................", "..#............^.#..........", "..................#.....#...", "..........................#.", "..................#.........", "............##..............", "..#...#....................." }

    Returns: 2

  54. { "............................", ".............#..............", ".................^.#........", "...#........................", "..#..#......................", ".....#...............#....#.", ".......#.#.#.......#...#....", "......#....#....#...........", "...^#.......................", "........#.........#.......#." }

    Returns: 3

  55. { ".........................", "......#.........#........", "...................#.....", ".........................", "....#........#...........", "..........#.....#........", "........#........##.#....", ".........................", ".....#....#..............", ".........................", "............#.......#....", "...........#............#", "..........#........#.....", "......#.......#..........", ".........#......#........", "..#..............#.......", ".........................", "....#....................", ".........................", ".........................", ".........................", ".#................#......", ".................#.......", ".#..#................#.#.", "...................#.....", "#..#..................##.", ".#...........#.....#.....", "#............#.......^...", "....#...............#..^.", "...#...........#.......#.", ".........................", ".........................", "###......#.....#..##....." }

    Returns: 2

    { ".....#..............#..#..........^.", "......................^.^.........#.", "........#.............^.#...........", ".^.#.#.......................^..#...", "^....................#......^.......", ".......^........^............^....#.", "........................^.....^.....", "......................#.............", "##...#....^..........^.......^..#...", "............................^..#....", "...#........^.^..^.#..#..........#^.", "......^........^.........^^........^", ".^................^......^........^.", "..........................#.........", "...^................^^..............", "...^.....^....^..............#.^^...", ".^^.....................^...........", "...^..........................##....", "......#....^....^...................", "................................^...", ".#^...^...........^....^...^........", "..^...........^^.....^..........#...", "....^.............#..........^......", "........^..^...^.......^............", ".............^...^..................", ".....^..........##..................", "............^.......^.#....#..^.....", ".......^...^........................", "....................^....#.........." }

  56. { "#.#.^.##^.^.#.##.^#.#.###.#^#.##.#..^##.", ".###.#..##^^..#^..##.##..#.#^...^###.#^#", "#.##.....#^^####.#.^^..^...###.#..^^#.^.", "^^^#^..#^#.###..^..^^####.#^^..##.^##^^.", "####.###....#^.##^^#....##..#^#..#.....#", ".#.##.^.##.#.^#^###.#.^.###..#.#..^##^#^", ".#.##^..^.^..#.###^.#.....#...##..#..^#.", ".#.^^.#^#^^.#...#.#####^#^####..#.###...", "^^#..#^#^..^.#...######.####^....##.^...", ".^..^...#.##..#.#.^^##.^##.#######^#..^^", "##^#####^#.#.#.##.#.####.#.^^#..##^^.#.#", "#.#^#####.###.##.##...#.##^#^#^...#..#^#", "#..^#.#..##^^#.#.#.#.#.#.#.###.#...##..#", "^#.#..#...#.#..####.#..#.#.#..##.......#", "##..##.#.##..^.###.#..^#..^..###.##^#.^.", "...^#^..####.#^..^^.###.#...^.###.##..#^", "##.###.##^#.#.#^^##..^^.###.##.#.#.#...^", "#..#..^#...^.##.^##..#^#...##.###..###..", ".#.#.##.#.^..###.^.^^.#.^.###..^##^.##.^", "#..#.##..#...####.#.###...#.####.###.#.^", "#.###....###^..#^...##.#...###.##.#.#..#", "####.#..^.###^#.#^.#.##...#.#.#..#^.##.#" }

    Returns: 0

  57. { ".^..^#####...####.^###...#..#..##...###", ".^#####.#.####^#.#.#..^#.####^#..#.#^.#", "....##.##.###.#.#...##.#.##..^##.#^.#.#", "^.^#####.^^......#.#.^.^##.###..#...###", ".###.#..#^#..^.##.###.####..#..##.#....", "##.###^^#..#...#.^...^#.##..#...#...^.^", "^#...^#^#..#....##^#.#.##...^#....##...", ".#..#..##^##.^#^.##..^##.#..##.##.^#...", "##..^.#^###.#.#....##..#.###^###..#^#..", "..#.#....#.#...#####.##.#..#^^..#.#....", "..^#..##...##..##...#^^##.###...#..##^.", ".^#.#^.^.##..###^...###.....^#^......#.", "#..#..^##.#^.##..#.#.#..#^...#^####.#.#", ".##....^#^.##...#.###.###...##.....^#.#", ".#..#...#....^^..#.#.#^######^...^#.^#.", "##.##^#.#..#..^..^##..##..^^...###.....", "###..##.#.##..#.##..##^^###.^^.#.#^^#.#", "###^...###..#...#.#.....##..#.####.#.##", "#..##..####^#^^.^#.####.#..^.#.#...#.##", "...#.^##.###..#....#...#.#..^..^#.#.^.#", "#...^.#.#^..#..#...^^#.#..#.^.#^####.^.", "^..##..^^....#.#..#####.#..##.^##.#..##", ".....^#.#..#....###..##...^..#....#...#", ".#..#..##...^.#^.^##...^#^#.^##.##.#...", "##...#.##.^#.#.#....#..^^###^.##..^..##", "....#.#.....##.#..#####..#.^#^.#..^^.##", "#..#^#^#....###^#....##.#.#.^.#....####", "....##..#.#.##.###...##.^#.##^##.##...^", "..^^#.^##...^#.##.##.##..##..##.##.#.##", "###.....#.#^....#.##.^##..#...##.##.#..", "...^###.^###.#^.##..##.###...#.##..##.." }

    Returns: 0

  58. { ".#.....###^...#.#...#.", "#.#..#.##..#..#.......", ".#.##...#.####.#.#.#..", "##......#.###.###.##.#", ".......#..^#..##..#...", "##.#.##.#.##....#.....", "....##........#.......", "#.###....^#..#^#...##.", "..#.#....#.#..#....#..", "#.#....#.#.#..#...^##.", "...#.#....#..#..###...", "....#.##..#..#.......#", "#.....^.#..#.##^##.###", "..##...#.#..###.##..##", "#....#^#.#####..#..###", "..#.......##...#####..", "..###.#..#...##.....#.", "^^.#..#.#..#..#..#...#", "##^#.#..#..#..#...#..#", "#.##..#.#...##..###.#.", ".#..#.#^..##^.#...##..", ".##.......#..^.#...#.#", "..^##...#....#.#...#.^", "#.#^.^..#.#..#.....##.", "..#..#..#.#....#..#..#", "..#...#.#.........#...", "###.....^.^.....#.....", "#........##..#.^#.#...", "#.#^##.##...#.##......", "#..##.#^..#.#...##...#", "##.....#..#.##..##..#.", "##..##.#.##.##.#.#...#", "#.....#.#.#..#.##.##.." }

    Returns: 0

  59. { ".^^#^.^...^.^..^^.....^.....^..^^.^", ".....^^..^.....^....^...^.^...^^..^", "^.^^...^...^.^..^^^..^....^...^.^^^", "..^^.........^^.^...........^^..^^.", "^...^...^^.^..^..^^..^^^....^......", ".^.^..........^^..^...^..^.......^.", ".^.^^..^.^^...^^^...^^..^......^^..", "...^.......^^#^..^.#..^........^.^.", "..^..^...#^^..^......^.^...........", "^^.^^..^.^.....^.^.....^....^.^....", ".........^.^..^..^.^^.......^...^^.", "^...^...^........^.^...^...........", "^^^.^^.........^^..^.^^......^^..^.", ".^........^.^.^...^...#^..^^.^....^", "...^...^....^.....^^....^..^....^^.", "..^..^..^^.^.^.^^^^.^.^..^..^^..^.^", ".^^^.^.........^....^.^....^.^.^.^^", "^.^...^....#^.....^^^....^^..^^^...", "..........^..#...^.............^^..", "...^.^^....^.....^^..^....^^^.^....", "...^^^......^.^..^.........^^......", "^...^.^.^...^..^....^.^..^......^.^" }

    Returns: 2

  60. { "^^^^^^^...", ".^^^^^^^^^", "^^^^^^^^.#", "^#.^^.^^^^", "^.^..^..^.", "#^^^.^^.^^", "^.^.^^^^..", "^^^.^..^.^", "^.^^^^^^..", "^^^^^^.^^.", "..^^...^^^", "^^.^^^^^^.", "^.^^...^^.", "..^^^^^^^.", "^^^.^^.^^^", ".^.^^^^..^", "^^^^^^^^^^", "^.^^^^.^^^", "^.##^.^.^.", "^..^^..^#^", "^.^^^^.^^.", "^.^^^^^^^^", "..^.^^^^^^" }

    Returns: 3

  61. { "^.^.^..^..^.^...^^^^..^.^........", "^.........^^..^.^...^^......^.^.^", ".^.^.....^.^^^....^...^.....^^..^", ".^.^.#^.^.^...^..^.^.^...#^..^^^.", "..#^...^......^..^.^^.^.^^..^..^.", ".^^^...^.^.^^.^.^.^^^...^^....^..", "^.^..#.........^....^.^^.^.^..^^.", "^^^.^.......^.^.#.....^.^^....^^.", "^.^.^^^..#^^.^..^.^..^^..^.^..^..", "#^.^....^....^^.^^.^.....^.^...^^", "...^..^..^..^^^.....^.....^^..^..", "^...^...^....^.^..^^......^..^...", "..^...^^^...^^.^.^..^^....^...^..", ".^^........^...........^.....^^^.", "^..^...^^..^^...^...^.....^.^..^.", ".^...^^..........^^...^..^..^^^.^", ".....^....^...^.^..^....^.^^.....", "^..^.^..^.^.........^..^.^^......" }

    Returns: 2

  62. { "^^..^^...^^^", "^#.^^....^.^", ".^^^.^^^.^^^", "..^^^.^.....", "^.^^..^.^^^.", "^^^....^.^^#", "..^^.^.^....", "^.^..^^^^.^.", "^.^^^^..^.^.", "^^^^^^^..^..", "^^^^^.^^^..^", ".^^....^.^^^", "^^^...^.^^#^", "....^.^...^^", ".^.^^.^.^^.^", "^^^.^^...^^^", "^...#^.^.^.^", "^^^^...^^..^", "^.^..^.^^^.^", ".^^^..^^.^^^", ".^#.^^^^.^^^", "..^^.^..^.^.", ".^^^...^.^^^", "^.^^^.^.^^^^", "..^^.^^.^.^.", "^^^^..^^^^^.", ".^.^^.^^^^^.", ".^^...^....^", "^^.^^^.^.^^^" }

    Returns: 3

  63. { "^^^..^.^^^", "^^^^.^..^.", "^.^.^.^^.^", "^^^^.^^^^^", ".^^^..^^^.", ".^..^.^^^^", ".^..^^.^.^", "....^.^^.#", "^.^^^.^.^^", "^.^^^^..^^", "....^^^...", "^^^^..^..#", ".^..^.^...", ".^^.#^.^.^", "^^^.^^^^^.", ".^.^^.^^^.", "..^^^.^^.^", "^.^^...^^^", ".^....^^..", ".^^...^^^.", ".^^.^.^..^", "^.^...^^^^", "^...^^.^.^", "^...^^^^^^", "^.^#.^^^.^", "^.^#^..^.^", "....^^^^..", "^..^^..^.^", "^^^..^^^^.", ".^..^^.^^.", "..^^..^^^^", "^.^.^.^.^^", "^.^..^.^..", "....^^^^^^", "^^....^...", "^^.#.^.^.^" }

    Returns: 2

  64. { "^^...^.....^....^.^^^", "......^.^...^.^..^..^", "......^.^^.^.^...^^..", ".....^.^.^..^.^..^^#.", "..^..^^.^.^^..^^^....", "^^^..^^.^..^.^.^^.^.^", "..^...^.^.^.^..^^^.^.", "^^.^..^...^.^^^..^.^^", "..^...#^...^.^.^^^...", "....^....^......^.^.^", "^.^^.^^..#..^...#^..^", ".....^...^^...^^^^.^.", "^^...^.....^..^.^^...", ".^^....^..^..^..^#...", "^^^....^^..^.^.^^....", ".^^..^.^........^^...", "..^...^.^.^..^..^..^^", "..^...^...^...^.^^..^", "^.^...^.......^.....#", "..^.^^^^.^..^....^...", "^^.^.^..^..^..#..^.^.", "...^.^^.........^^.^^", "^..^....^..^^..^...^." }

    Returns: 2

  65. { ".^^^..^.....^^...^^.^..", "^.^........^.....^.^^..", "....^^.^.^.#...^......^", ".^^^...^.^^.#....^.^^..", "^^..^........#.^^^.^^.^", "^.^....^^..^..#........", ".^.^^.^^.^^.^..#.....^.", "..^....^...^....#^...^.", "^...^^..^...^..#^#.^#^.", ".^.....^....^.^..^#.#..", ".^..^.^...^.^....^.##..", "...^....^^..^.^^..^^#..", ".^..^.^..^^^...^.^.^##.", "^......^.^...^^..^...^#", ".^.....^...............", "............^.....^^...", "......#.........^^.....", "^.^.^..^..^^.^.^.......", "...^....^..^.^.......^.", "....^......^...^^^.^...", "^....^.^.^^....^^.^....", "...^....^^......^^^....", "^..^..^^......^^..^.^^^", "....^.^.^.^..^^^.^...^.", "^........^......^..^..^", "^..^...^....^..#^.^....", ".^^.......^^...#^.^.^..", "..^.^.....^..^^#..^...^", "...^.^^...^^.^.#....^.." }

    Returns: 1

  66. { "^...^...^.^.#^.^..", ".....^....^^#.^^.^", ".........^........", ".^.^...^^..^...^..", "..........^...^^..", "^^^.....^^......^.", "..^^.^.....^.^.^..", ".....^^...^.^.....", "....^....####.....", ".......^..#......^", "..^^.^....#...^...", ".......^^^#.^.....", "....^...^##^^^....", ".......^.##.^..^..", "^.^^^.^..##.^^.^..", "...^^^.^^##...^^^.", ".^^...^.^##.....^.", "...^.^^.^##.^^.^.^", "########.##.......", ".....^..^##....^..", "....^....#......^^", "..^^...^......^.^.", ".^.....^.^.^^..^^.", "^..^....^.^.......", "..^^......^.^....^", "...^...^...^.^....", ".....^..^...^...^.", "^.....^^..^^^^....", "..^.....^........^", "......^.....^.....", "^.....^^.......^.^", "....^....^..^....^", "...^^...^..^^.^^..", ".....^...^.^^^...^", "...^.^.......^^^^.", "..........^....^^^", "....^.^.....^..^..", ".^.......^^.^^....", "..........^....^^.", "......^^.........." }

    Returns: 1

  67. { ".^..^..^..^......^^^.^.", "...^^..^.^.^......^....", "^^.^^^.^^..^^.....^....", ".^....^.^^..^........^.", "......^.^^^...#...^^...", "....^^^.^.^...^#.^..^^.", "....^..^^^.^..^.#^.....", "^^.^....^^.^.^.^.#^....", "...^^^^..^..^^^..^.^.^.", ".....^.^^....^^....^.^^", ".^.........^.^.^^^.^...", "...^.........^^^^^.^..^", "..^..^.^.^....^..^.....", ".^...^..^^...^..^..^^^.", ".^^...^.^..^..^.^.^..^^", "^..^...^^...^^.^..^....", ".....^^.^....^...^^.^.^", "^....^^.^..^^.....^....", ".^^..#^^..^...^^.^.^.^^", "^....#^.^......^..^..^.", "..^^.#..^^.^..^...^^.^.", "##########.^^^.^....^^.", "^^^^.#.^.#^.^^....^..^^", "^.^.....^#...^^#..^...^", "^.....^..#..^..#..^...." }

    Returns: 1

  68. { "..^..^..^.^^....^^..^^^.^.#...^.#.", ".^...^...^....^.^..^^...^.#.^.^.#.", "^..^..^....^..^....^...^..#.^^..#^", ".^^...^.^^^^^......^^.^.^.#^#^.^#^", ".....^^^^....^^^.....^^.^.##.^..#^", "..^.....^.....^..^^^..^^.^#^^^^^#.", "^..^.^^^^^.^...^^.^......#...^.^#.", "^^^^^^.^.^^..^.^.^^.^^^.#^^^^...#.", "^....^..^^^.^....#^^.^^#.^^.^.^.#^", ".^.^...^.^....^...#^..#^^.^^....#^", ".^.^^^.^^^.^^.^...^#.#.^.^^^^.^^.^", "..^.^^^..^^...^..^^^#^#^.^.^..^..." }

    Returns: 1

  69. { ".^.^.^.^^^.^#...^..^.#.^", "^^.^.....^^.#..^...^^..^", "^.^^...^...^#^^..^^.^.^^", "^.......^..^#.........^^", "^.^...^.....#..^^^^..^..", "^.^....^^^..#^..^^^.^...", ".^^.^.^..^^^#^..#^......", "#...^.^....^#^^^#..^.^^^", "...^.^.^....#.^^#.^....^", "..^..^.^^...#.^.^^^..^.^", "..^.^^^..^.^#^.....^...^", "^........^.^#^..^...^^^.", ".^.^^....^^.#^.^^.......", "^#...^..^^..#^....^^....", "^^#...^.^^^^#.^^...^^..." }

    Returns: 2

  70. { "^..^^..^#......................^..", "^....^..#.^...^...........^..^....", "...^....#.......^.........^....^..", "^.......#..^^...^...^......^......", ".^......#..........^...^..........", "....^...#.........^...^..........^", "..^...^^#...............^^^.......", "........#........^.^.^......^...^.", ".^......#.^...^...................", ".^......#^......................^.", "........#..^^^.^^....^.....^.^....", ".^....^.#..^.....^............^.^.", ".......^.^...............^.......^", "^..^.^.....^.........^#.^.......^.", "..^....^..............#....^.^....", "...^.......^....^...^.#.^....^...^", "..^......^......^...^.#...^.^.....", ".^..........^........^#....^......", ".............^........#..........^", "^..^...^....^........^#^.......^^.", "...^^..^.^............#..^...^....", "...^...^^.............#...........", "^..^...^..............#^....^..^^.", "......^.^..^.......^..............", "..^....^^^^....^......^^.^.......^", ".^..^......^...^.^..^^.......^....", "....................^.....^....^..", "....^^....^............^#.....^...", ".^.............^..^.^..^#.....^...", "........^........^^.^...#^......^.", "........^.....^....^....#..^..^...", "....................^^..#..^^^..^.", "...........^..^...^^....#...^....^", "........^...^....^..^.^.#.^^..^^.." }

    Returns: 3

  71. { ".^.^^#^^^.#.^", "^.^^..#^^#..^", ".^..#..##^...", "..^....##...^", "^.^^..#..#^^^", "...^..^^^^#..", ".^.^..^.^..#.", "^......^.^..^", "^..^.........", "^..^..^..^^.^", ".^.....^.....", "..........^.^", "^...^^^^^....", "....^....^..^", "^^^^^^^...^.^", "..^...^...^..", "^.^.^^^..^.^.", "^^^.^.^.^^^.^", "...^.^.^..^.^", "...^.........", "^^....^^^....", "^...^......^#", ".^.^..^^^..^^", "..^^......^^.", "^...^.^...^^.", "^..^^^^...^^.", "^....^.^^^^..", "...^^...^^^^^", "^^...^^.^^^^.", ".^..^^^^.^.^^", "..^.^....^..^", "..^^.....^^^^", ".........^^^." }

    Returns: 1

  72. { ".^..#.^....^...^^^....^^..^.....", "^.^^#...^^...^^.......^^..^.^..^", "....#^#^.^^^..^...^^...^^.^^...^", ".^^..#.^^^.^^^^^...^^^..^^...^.^", "^^^.#.^^.^.^...^^.^..^.^.^...^^.", ".^^..^^^^^^^.^..^.......^^^^.^..", "^^..^^^..^...^.^....^^.^.^^..^^^", "....^..^.^^.^^^...^..^^^..^^^^.^", ".^^.^.^..^.^.....^.....^..^..^.^", "...^..^.^^^^.^^^........^..^.^^^", ".......^.^^^.^..^^^^^..^.^^..^^^", "^..^.^....^.^^...^#^#^...^..^.^.", "^.^^^.^.^^^..^..^#..#.^^.^^..^^.", "..^^^^^^^^^..^^.#...#^^^^^.^.^^.", "^^^^....^.^....#..^^#^.^...^^.^." }

    Returns: 1

  73. {"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" }

    Returns: 4

  74. {"#############.###.#########.###########.", "#....................................#..", "#.#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.#..", "#.#^^^^^^^^^^^^^^^^^^^^^^^^^.........#..", "#.#......................#.########..#..", "#.#.........^^^^^^^^^^^^^^^^^^^^^^^^^#..", "#.#............#########...........#.#..", "#.#.^^^^^^^^^^^^^^^^^^^^^^^^.......#.#..", "#.#..............^^^^^^^^^^^^^^^^^^.....", "#.#...^^^^^^^^^^^^^^^^^^................", "#.#...................^^^^^^^^^^^.......", "#.#....^^^^^^^^^^^^^^^^^^^^^^^..........", "#.#........^^^^^^^^^^^^^^^^^^^^^^^......", "#.#.^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...", "#.#^^^^^^^^^^^^^^^^^^^^^^^^^............", "#.#...........^^^^^^^^^^^^^^^^^^^^^^^..#", "#.#.^^^^^^^^^^^^^^^^^^^^^^^^^^.........#", "..#..^^^^^^^^^^^^^^^^^^^^^^^^^^.........", "#.#....^^^^^^^^^^^^^^^^^^^^^...#........", "#.#.^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.......", "#.#.^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^......", "#.#.^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^..", "#.#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...", "#.#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#.###..", "#.#.^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^..", "#.#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^....", "#.#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^......", "#.#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...", "#.#.^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^..", "#.#....^^^^^^^^^^^^^^^^^^^^^^^^^^^^^....", "#.#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^..", "#.#.^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...", "#.#...^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.....", "#.#.^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^......", "#.#.^^^^^^^^^^^^^^^^^^^^^^^^^^^^........", "#.#........^^^^^^^^^^^^^^^^^^^^^^^^^^...", "#.#.^^^^^^^^^^^^^^^^^^^^^^^^^^^^........", "#.#........^^^^^^^^^^^^^^^^^^^^^^^^^^...", "#...^^^^^^^^^^^^^^^^^^^^^^^^............", ".######.###############.###############." }

    Returns: 2

  75. {".##^###..", ".#^^^^#..", ".#^^^^#..", ".#^^^^#..", ".##^^##..", "...^^...." }

    Returns: 1

  76. {"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^#^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^#^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^#^^^^^^^^^^^^^^^^^^^^^^^^#^^^^^^^^^^^" }

    Returns: 3

  77. {"#......................................#", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", ".^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.", "#......................................#" }

    Returns: 4

  78. {"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" }

    Returns: 4

  79. {".######..", ".#^^^^#..", ".#^^^^#..", ".#^^^^#..", ".##^^##..", "...^^...." }

    Returns: 1

  80. {"#####", "#^..#", "#.#.#", "#.#.." }

    Returns: 1

  81. {".....", "..#..", "#.^.#", "..#..", "....." }

    Returns: 2

  82. {"...", ".^.", "..." }

    Returns: 4

  83. {"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^.^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" }

    Returns: 4

  84. {"^#^", "^^^", "^^^" }

    Returns: 3

  85. {"........................................", "........................................", "...................^............#.......", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................" }

    Returns: 3

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

    Returns: 4

  87. {"..............................", "............................^.", ".............................." }

    Returns: 4

  88. {"^^#^^^#.#.##^##.#^^^##.^", "^..##.^##^^.^^^..##^^^^#", "##.#^#####.^.^^##..^#.^.", "#..#..##^#..^##...##^^^#", ".#^..^.^^.###.^^##.^^..^", "^##^^#..##...^^#.^.#^.^^", ".#^###.#^^^..^.^.#^.#^^.", "^#^^^^#..^^#^#^.#.##..^.", "^##^^#^..^^..#..^##^..^#", ".^^.^^^^.#.^^#..#^^^..#.", "#^.#.^###^.^#^^.^^#^###.", "#^.^^^#.#^##..^#.....#^#", ".^##.#^##....^.##.####.#", ".^#..^^#^.##^^#.^^.#..##", "^#.^^.^#.^^...#^^^##^##.", "..#.#.^^..^.^..^.^#^.#.#", "^####^.^^#^#.#^.##^.^...", "##..#..^^#^#^.##.^##..^^", "#..^.#^...^^.#.^##..#^##", ".#.#^^^...^#..^^^#^^^..^", "..#.#^..^#^#.^..^.^###^#", "^###..^^..^.^#...^^^^#^#", "#^##^..#^.^^^##..^#.##^^", "#^^.#.....^..^.#.#^^#..^", "...##.^^^#.^^#..^^...^^#", "#^^^^...^##.^.#.#^^#^#^^", "^^^^.^#^#^.^#^###^^^#.^.", ".^##...^.#^^^###.^.^.##.", ".^....####^#^#^^^..##.^.", "#..^^#.....##^^##^#..#^.", ".^^#^#.#^^^#..^#^^##^#^#", "#.^#.#^.#^##..#.^#.^#..#", "^^.^##.^^.^###.#^###^#^.", "#^^^#^#.^^.#..^#^.####.#", "#.####.^#^^#^^..^..^.###", "..#.^^.##^#.#.#^^..^^^^^", "#.^^^#^^##^..#...#.#^#^#" }

    Returns: 0

  89. {"....", "..^.", "...." }

    Returns: 4

  90. {"^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^" }

    Returns: 4

  91. {"######################################^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#", "#^######################################" }

    Returns: 2

  92. {"........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", ".......................................#", "......................................^#", "......................................##" }

    Returns: 2

  93. {"........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "........................................" }

    Returns: 4

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

    Returns: 4

  95. {"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^##^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^#^#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^#^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^######^^#^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^#^^^^#^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^#^^^^#^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^#^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^#^^^^#^#^^^^^^^^^^^^^#^^^^^^^", "^^^^^^^^^^#####^#^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^#^^^^^#^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^#^^#^^#^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^##^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^####^^^^^^^^^^^#^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^#^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" }

    Returns: 1


This problem statement is the exclusive and proprietary property of TopCoder, Inc. Any unauthorized use or reproduction of this information without the prior written consent of TopCoder, Inc. is strictly prohibited. (c)2024, TopCoder, Inc. All rights reserved.
This problem was used for: