6.1. Método general.
Variables:
- s: Almacena la solución (un array, desde 1 hasta el nº máximo de niveles).
- nivel: Indica el nivel actual en el que se encuentra el algoritmo.
- fin: Valdrá true cuando hayamos encontrado alguna solución.
Funciones:
- Generar (nivel, s): Genera el siguiente hermano (o el primero) para el nivel actual. Devuelve el siguiente valor a añadir a la solución parcial actual (depende de la solución parcial y del nivel).
- Solución (nivel, s): Comprueba si la solución (s[1], ..., s[nivel]) es una solución válida para el problema.
- Criterio (nivel, s): Comprueba si a partir de (s[1], ..., s[nivel]) se puede alcanzar una solución válida. En otro caso se rechazarán todos los descendientes.