Escape del laberinto Escribir un programa que diga el número de caminos diferentes que permiten escapar de un laberinto dado. La casilla inicial siempre es la de la esquina inferior derecha. La casilla de salida siempre es la de la esquina superior izquierda. Todos los movimientos deben ser hacia arriba o hacia la izquierda. Hay casillas marcadas por las que no se puede pasar. La casilla inicial y la de salida nunca estarán marcadas. Siempre habrá por lo menos un camino desde la entrada hasta la salida. Si el número de caminos fuese mayor o igual que 106 , el programa debe escribir “demasiados caminos”. Entrada La entrada es una secuencia de como mucho 1000 casos de pruebas separados por una lı́nea en blanco. Cada caso de pruebas consiste en una lı́nea con n y m (respectivamente, el número de filas y el número de columnas), seguida de n lı́neas (una por fila) con m caracteres cada una (X o un punto). Una X indica una casilla marcada (prohibida). Un punto indica una casilla por la que se puede pasar. Un caso de pruebas especial consistente en una lı́nea con dos ceros marca el final de la entrada. Se cumple 2 ≤ n ≤ 40 y 2 ≤ m ≤ 40. Salida Para cada caso de pruebas, hay que escribir el número de caminos diferentes que van desde la esquina inferior derecha hasta la esquina superior izquierda, con todos los movimientos hacia arriba o hacia la izquierda. Si ese número fuese mayor o igual que 106 , en su lugar hay que escribir “demasiados caminos”. Tened en cuenta que el número de caminos puede sobrepasar el tamaño máximo del tipo entero de vuestro lenguaje de programación! Ejemplo de entrada Ejemplo de salida 2 2 .. .. 2 6 4 1 demasiados caminos 1 1 3 3 ... ... ... 3 8 .......X .X.X.X.. X....... 4 10 .X......XX ....X..... .XX...XX.. ..XXX..... 7 38 ...................................... ...................................... ...................................... ...................................... ...................................... ...................................... ...................................... 7 40 ........................................ ......................................X. ......................................X. ......................................X. ......................................X. ......................................X. ......................................X. 7 40 .X...................................... .X...................................... .X...................................... .X...................................... .X...................................... .X...................................... ........................................ 0 0