shorter parsing code

master
gnieark 9 years ago
parent 7ccab728df
commit 2b405487ec

@ -1,34 +1,17 @@
<?php <?php
//separer les map //separer les map
$linesByLines=explode("\n",file_get_contents("easy.txt")); $grids=explode("\n",str_replace(array("+-----------------+\n","|"),"",file_get_contents("easy.txt")));
$grilleNumber=-1; $grid=array();
$i=-1; foreach($grids as $gridLine){
$lineArray=array();
while($i<count($linesByLines)){ for($i=0;$i<strlen($gridLine);$i=$i+2){
do{ $lineArray[]=$gridLine[$i];
$i++; }
}while (preg_match("/^\+-/", $linesByLines[$i])); //credit Zigazou pour cette ligne $grid[]=$lineArray;
if(count($grid)==9){
viewGrid(resolveSudoku($grid));
//on est sur la ligne de bordure haute $grid=array();
$grilleNumber++; }
$lineNumber=0;
do{
$line=str_split(substr($linesByLines[$i],1,-1));
for($j=0;$j<count($line);$j=$j+2){
$grille[$grilleNumber][$lineNumber][]=$line[$j];
}
//echo "!!!".substr($linesByLines[$i],1,-1)."!!!\n";
$lineNumber++;
$i++;
}while (!preg_match("/^\+-/", $linesByLines[$i]));
viewGrid(resolveSudoku($grille[$grilleNumber]));
} }
function resolveSudoku($grille){ function resolveSudoku($grille){
@ -42,10 +25,8 @@ function resolveSudoku($grille){
} }
} }
} }
while( $numberOfFreeCases>0){ while( $numberOfFreeCases>0){
// echo $numberOfFreeCases."\n"; // echo $numberOfFreeCases."\n";
//toutes les cases //toutes les cases
for ($y=0;$y<9;$y++){ for ($y=0;$y<9;$y++){
@ -85,16 +66,11 @@ function resolveSudoku($grille){
} }
} }
} }
} }
} }
} }
} }
return $grille; return $grille;
} }
function listFreeCasesNearMe($x,$y,$grid){ function listFreeCasesNearMe($x,$y,$grid){

Loading…
Cancel
Save