Baltic OI '11 P3 - Switch the Lamp On

View as PDF

Submit solution


Points: 12 (partial)
Time limit: 0.6s
Memory limit: 64M

Problem types
Baltic Olympiad in Informatics: 2011 Day 1, Problem 3

Casper is designing an electronic circuit on an N \times M rectangular grid plate. There are N \times M square tiles that are aligned to the grid on the plate. Two (out of four) opposite corners of each tile are connected by a wire.

A power source is connected to the top left corner of the plate. A lamp is connected to the bottom right corner of the plate. The lamp is on only if there is a path of wires connecting power source to lamp. In order to switch the lamp on, any number of tiles can be turned by 90^\circ (in both directions).

In the picture above the lamp is off. If any one of the tiles in the second column from the right is turned by 90^\circ, power source and lamp get connected, and the lamp is on.

Write a program to find out the minimal number of tiles that have to be turned by 90^\circ to switch the lamp on.

Constraints

1 \le N, M \le 500

Subtask 1 [30%]

1 \le N \le 4

1 \le M \le 5

Subtask 2 [70%]

No additional constraints.

Input Specification

The first line of input contains two integer integers N and M, the dimensions of the plate. On each of the following N lines, there are M characters – either \ or / – which indicate the direction of the wire connecting the opposite vertices of the corresponding tile.

Output Specification

There must be exactly one line of output. If it is possible to switch the lamp on, this line must contain only one integer: the minimal number of tiles that have to be turned to switch on the lamp. If it is not possible, output the string: NO SOLUTION.

Sample Input

3 5
\\/\\
\\///
/\\\\

Sample Output

1

Sample Explanation

This sample corresponds to the picture in the statement.


Comments

There are no comments at the moment.