@ 2013-08-09T17:42:36Z <?php
class SudokuSolver
{
protected $sudokuColumns;
public function __construct (array $sudoku)
{
$this->sudoku = $sudoku;
}
// could be static as well
public function printOut ($sudoku)
{
foreach ($sudoku as $column) {
foreach ($column as $cell) {
echo "|";
if (null !== $cell) {
echo $cell;
} else {
echo " ";
}
}
echo "|\n";
}
}
public function solve()
{
$this->checkConsistenz();
}
protected function checkConsistenz ()
{
$columns = $this->sudoku;
// check rows -> own method
$rows = array();
foreach ($columns as $columnIndex => $column) {
foreach ($column as $rowIndex => $cell) {
$rows[$rowIndex][$columnIndex] = $cell;
}
//$this->printOut($rows);
}
foreach ($rows as $row) {
$this->checkRow($rowIndex);
}
}
protected function checkRow ($rowIndex)
{
echo "checking $rowIndex..\n"
}
}
$sudoku = array();
$sudoku[] = array(null,3,null, null,null,null, null,null,null);
$sudoku[] = array(null,null,null, 1,9,5, null,null,null);
$sudoku[] = array(null,null,8, null,null,null, null,6,null);
$sudoku[] = array(8,null,null, null,6,null, null,null,null);
$sudoku[] = array(4,null,null, 8,null,null, null,null,1);
$sudoku[] = array(null,null,null ,null,2,null, null,null,null);
$sudoku[] = array(null,6,null, null,null,null, 2,8,null);
$sudoku[] = array(null,null,null, 4,1,9, null,null,5);
$sudoku[] = array(null,null,null, null,null,null, null,7,null);
$sudokuSolver = new SudokuSolver($sudoku);
$sudokuSolver->printOut($sudoku);
$sudokuSolver->solve($sudoku);
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Here you find the average performance (time & memory) of each version. A grayed out version indicates it didn't complete successfully (based on exit-code).
Version System time (s) User time (s) Memory (MiB) 5.4.17 0.030 0.073 19.12 5.4.16 0.027 0.067 19.07 5.4.15 0.023 0.040 18.88 5.4.14 0.023 0.030 16.34 5.4.13 0.027 0.037 16.32 5.4.12 0.023 0.037 16.34 5.4.11 0.020 0.033 16.32 5.4.10 0.013 0.037 16.32 5.4.9 0.027 0.027 16.56 5.4.8 0.020 0.033 16.51 5.4.7 0.013 0.037 16.33 5.4.6 0.020 0.033 16.25 5.4.5 0.023 0.030 16.16 5.4.4 0.023 0.037 16.43 5.4.3 0.017 0.033 16.14 5.4.2 0.017 0.037 16.40 5.4.1 0.017 0.037 16.24 5.4.0 0.010 0.040 15.79 5.3.27 0.030 0.043 14.59 5.3.26 0.020 0.057 14.52 5.3.25 0.017 0.037 14.78 5.3.24 0.020 0.033 14.70 5.3.23 0.013 0.040 14.66 5.3.22 0.023 0.030 14.60 5.3.21 0.023 0.033 14.51 5.3.20 0.017 0.037 14.51 5.3.19 0.020 0.033 14.63 5.3.18 0.023 0.043 14.58 5.3.17 0.027 0.027 14.61 5.3.16 0.020 0.040 14.66 5.3.15 0.033 0.030 14.69 5.3.14 0.023 0.040 14.63 5.3.13 0.020 0.037 14.64 5.3.12 0.017 0.037 14.57 5.3.11 0.023 0.037 14.46 5.3.10 0.020 0.033 14.04 5.3.9 0.010 0.040 14.04 5.3.8 0.017 0.033 14.25 5.3.7 0.023 0.030 14.04 5.3.6 0.023 0.030 14.09 5.3.5 0.023 0.033 13.86 5.3.4 0.013 0.037 13.86 5.3.3 0.020 0.033 13.90 5.3.2 0.020 0.037 13.71 5.3.1 0.020 0.033 13.55 5.3.0 0.020 0.037 13.56
preferences:dark mode live preview
137.03 ms | 1398 KiB | 7 Q