<?php
// Para testear tu código en nuestros servidores debes mantener la estructura expuesta abajo.
// Eres libre de crear nuevas funciones/procedimientos.
// Recuerda que el código que escribas podrá ser visto por las empresas a las que te postules.
?>
<?php
$relieve = [[8, 9, 2, 2, 3, 5], [9, 8, 3, 2, 4, 5], [9, 7, 2, 2, 4, 3], [9, 9, 2, 4, 4, 3], [9, 2, 3, 4, 3, 5]];
var_dump(celdas_vecinas($relieve, 0, 1));
// Representación gráfica
// 8 9 2 2 3 5
// 9 8 3 2 4 5
// 9 7 2 2 4 3
// 9 9 2 4 4 3
// 9 2 3 4 3 5
function encontrar_bordes($relieve){
$resp = [];
for($i=0;$i<count($relieve);$i++){
for($j=0;$j<count($relieve[$i]);$j++){
$resp[$i][$j] = 0;
}
}
return $resp;
// return [[1, 0, 1, 1, 0, 0], [0, 0, 0, 1, 0, 0], [0, 0, 1, 1, 0, 1], [0, 0, 1, 0, 0, 1], [0, 1, 0, 0, 1, 0 ]];
}
function celdas_vecinas($relieve, $i, $j){
$celdas = [];
// si la celda no existe, regresamos.
if(!celda_existe($relieve, $i, $j)){
return null;
}
if(celda_existe($relieve, $i-1, $j-1)) {
$celdas[] = $relieve[$i-1][$j-1];
}
if(celda_existe($relieve, $i-1, $j)) {
$celdas[] = $relieve[$i-1][$j];
}
if(celda_existe($relieve, $i-1, $j+1)) {
$celdas[] = $relieve[$i-1][$j+1];
}
if(celda_existe($relieve, $i, $j-1)) {
$celdas[] = $relieve[$i][$j-1];
}
if(celda_existe($relieve, $i, $j+1)) {
$celdas[] = $relieve[$i][$j+1];
}
if(celda_existe($relieve, $i+1, $j-1)) {
$celdas[] = $relieve[$i+1][$j-1];
}
if(celda_existe($relieve, $i+1, $j)) {
$celdas[] = $relieve[$i+1][$j];
}
if(celda_existe($relieve, $i+1, $j+1)) {
$celdas[] = $relieve[$i+1][$j+1];
}
//devolvemos los valores de las celdas vecinas
return $celdas;
}
// verificar que una celda existe
function celda_existe($arreglo, $x, $y){
if(!array_key_exists($x, $arreglo)){
return false;
}elseif(!array_key_exists($y, $arreglo[$x])){
return false;
}else{
return true;
}
}
?>
- Output for 5.5.0 - 5.5.35, 5.6.0 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.20, 7.2.0 - 7.2.33, 7.3.16 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.31, 8.2.0 - 8.2.27, 8.3.0 - 8.3.15, 8.4.1 - 8.4.2
- array(5) {
[0]=>
int(8)
[1]=>
int(2)
[2]=>
int(9)
[3]=>
int(8)
[4]=>
int(3)
}
preferences:
144.51 ms | 408 KiB | 5 Q