static void Resolve(ref int[,] matriz) { var resolver = new SudokuResolver(matriz, m => Console.WriteLine(m)); Console.WriteLine("Resolving Matriz:"); DrawMatriz(matriz); resolver.Resolve(); Console.WriteLine("Resolver Result:"); matriz = resolver.Sudoku; }
public ResolverResponse Post([FromBody] int[,] value) { var logs = new List <string>(); var resolver = new SudokuResolver(value, m => logs.Add(m)); var result = resolver.Resolve(); var response = new ResolverResponse { Matrix = value, Logs = logs, Resolved = result, RangeItems = resolver.RangeItems }; return(response); }
static void Main(string[] args) { var matriz = new int[9, 9] { { 7, 0, 8, 0, 0, 4, 3, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0, 0 }, { 5, 9, 0, 0, 6, 0, 0, 0, 0 }, { 0, 0, 0, 1, 0, 0, 0, 0, 7 }, { 0, 0, 7, 0, 0, 9, 0, 3, 0 }, { 4, 0, 6, 0, 0, 3, 5, 8, 0 }, { 0, 0, 4, 0, 0, 5, 0, 0, 6 }, { 0, 0, 0, 8, 1, 7, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0, 5 } }; //var matriz = new int[9, 9] { // { 1, 0, 0, 6, 0, 5, 0, 8, 0 }, // { 0, 0, 0, 0, 0, 0, 3, 4, 0 }, // { 7, 8, 3, 0, 0, 2, 0, 1, 6 }, // { 3, 1, 5, 9, 4, 6, 2, 0, 8 }, // { 0, 0, 0, 0, 0, 0, 4, 6, 0 }, // { 4, 7, 0, 0, 1, 0, 0, 5, 0 }, // { 0, 3, 2, 0, 0, 0, 0, 9, 7 }, // { 0, 0, 0, 1, 0, 3, 0, 0, 0 }, // { 0, 0, 0, 0, 0, 0, 8, 0, 5 } //}; var resolver = new SudokuResolver(matriz, m => System.Console.WriteLine(m)); System.Console.WriteLine("Resolving Matriz:"); DrawMatriz(matriz); resolver.Resolve(); System.Console.WriteLine("Resolver Result:"); matriz = resolver.Sudoku; DrawMatriz(matriz); System.Console.WriteLine("Validating Matriz"); resolver.Validate(true); System.Console.WriteLine("Validating Result:"); DrawResult(resolver.Result); System.Console.Read(); }