public void Solve(GrilleSudoku s)
        {
            //conversion de formats en int[,]
            int[,] converted = new int[9, 9];
            for (int row = 0; row < 9; row++)
            {
                for (int column = 0; column < 9; column++)
                {
                    converted[row, column] = s.Cellules[row * 9 + column];
                }
            }
            var sudoku = Sudoku.New(converted);

            var solver = new SudokuSolver();

            var solvedSudoku = solver.Solve(sudoku, 200, 5000, 40);
            // Possibilité d'incrémenter le nombre d'organismes jusqu'à obtenir une solution?
            // Mais les meilleures optimisations à faire sont probablement dans le code du solver lui-même, auquel cas, il faudrait copier le code dans le projet plutôt que le référencer

            var numOrganisms = 200;

            do
            {
                solvedSudoku  = solver.Solve(sudoku, numOrganisms, 5000, 1);
                numOrganisms *= 2;
            } while (solvedSudoku.Error > 0);

            //affichage du sudoku
            Console.WriteLine(solvedSudoku.ToString());
            //Reconversion depuis int[,]
            for (int row = 0; row < 9; row++)
            {
                for (int column = 0; column < 9; column++)
                {
                    s.Cellules[row * 9 + column] = solvedSudoku.CellValues[row, column];
                }
            }
        }