$curPos[0]){ $curPos[0] += 2; $result .= 'L'; } elseif($i_end < $curPos[0]){ $curPos[0] -= 2; $result .= 'U'; } if($j_end < $curPos[1] || $curPos[1] == $n - 1){ $curPos[1] -= 1; $result .= 'L '; } else { $curPos[1] += 1; $result .= 'R '; } } else { if($j_end < $curPos[1] || $curPos[1]){ $curPos[1] -= 2; $result .= 'L '; } else { $curPos[1] += 2; $result .= 'R '; } } $moves++; } echo $moves . "\n"; echo $result . "\n"; } } fscanf($handle, "%i",$n); fscanf($handle, "%i %i %i %i", $i_start, $j_start, $i_end, $j_end); printShortestPath($n, $i_start, $j_start, $i_end, $j_end); ?>