// Sudoku, resuelto con el backtracker genérico.
#ifndef SUDOKU_H
#define SUDOKU_H

#include "board.h"

// Busca soluciones de puzzle, y se detiene cuando encuentra limit, que es al menos 1. Devuelve cuántas
// encontró. Guarda la primera en *solution, si hubo alguna, y los nodos visitados en *nodes.
// Si puzzle tiene dígitos repetidos (board_is_legal), devuelve 0 sin buscar.
long sudoku_search(const Board *puzzle, int limit, Board *solution, long *nodes);

#endif
