Hacer un programa que escriba todas las maneras de poner n torres en un tablero n × n, de manera que ninguna torre amenace a ninguna otra.
Entrada
La entrada es una secuencia de como mucho 20 naturales, cada uno entre 1 y 7. La secuencia acaba en 0.
Salida
Para cada número n de la entrada, hay que escribir todas las maneras de disponer n torres en un tablero n × n, de manera que ninguna torre amenace a ninguna otra. Recordar que las torres se mueven (y amenazan) horizontal y verticalmente.
Las diversas soluciones han de aparecer en orden lexicográfico. Esto es, entre dos soluciones, aparece antes la que tenga la torre de la primera fila más a la izquierda. En caso de empate, se mira la segunda fila. Si persiste el empate, se mira la tercera, etcétera.
La salida tiene que seguir el mismo formato del ejemplo. Las torres se marcan con una T, las posiciones vacías con un punto. Hay que escribir una línea en blanco después de cada solución, y una línea con 10 guiones después de todas las soluciones para una n dada.
Input
3 1 1 2 0
Output
T.. .T. ..T T.. ..T .T. .T. T.. ..T .T. ..T T.. ..T T.. .T. ..T .T. T.. ---------- T ---------- T ---------- T. .T .T T. ----------