лучший способ написать эту программу так, чтобы она занимала минимальное время для выполнения

Я хочу тот же результат с меньшим временем выполнения. Есть ли лучший способ написать код, чтобы я мог получить тот же результат с минимальным временем выполнения.

<?php
$input1 = 5;
$input2 = 1;
$input3 = [9, 5, 10];

$numberOfWalls = count($input3);
$numberOfJumps = 0;

for($i=0; $i<$numberOfWalls; $i++){
if($input1 >= $input3[$i]){
$numberOfJumps += 1;
}else {
$tot = 0;
while(1){
if($tot + $input1 < $input3[$i]){
$tot = $tot + ($input1 - $input2);
$numberOfJumps += 1;
}else{
$tot = $tot + $input1;
$numberOfJumps += 1;
break;
}
}
}
}
echo $numberOfJumps;

-3

Решение

Как насчет этого:

// input
$forwards  = 5;
$backwards = 1;
$walls     = [9, 5, 10];
// computation
$oneJump   = $forwards-$backwards;
$jumps     = 0;
foreach ($walls as $wall) $jumps += ceil(($wall-$backwards)/$oneJump);
// output
echo "Jumps needed = $jumps";
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector