Найти максимальную разницу между двумя элементами
EASY
На вход подается строка целых чисел, разделенных пробелами.
Найдите максимальную разницу между двумя элементами строки при условии, что меньшее число должно находиться справа от большего.
Например, для строки "1 6 4 3" правильный ответ: "3" (6-3)
Решение
<?php
$line = trim(fgets(STDIN));
$nums = explode(' ', $line);
$numsCount = count($nums);
$maxDiff = null;
foreach ($nums as $i => $num1) {
for ($j = $i + 1; $j < $numsCount; $j++) {
$num2 = $nums[$j];
if ($num1 <= $num2) {
continue;
}
if ($maxDiff === null) {
$maxDiff = $num1 - $num2;
continue;
}
$maxDiff = max($maxDiff, $num1 - $num2);
}
}
echo $maxDiff;
Для просмотра решения нужно войти на сайт.
Тесты
Тест #1 |
Загрузка...
|
Тест #2 |
Загрузка...
|
Тест #3 |
Загрузка...
|
Тест #4 |
Загрузка...
|