БлогNot. PHP: максимальное число сцеплением набора чисел

PHP: максимальное число сцеплением набора чисел

Задача состоит в том, чтобы получить максимально возможное натуральное число сцеплением чисел из заданного набора, например, 789123111 из (123, 789, 111) или 9998 из (9,8,9,9).

На PHP за счёт имеющихся функций пользовательской сортировки и преобразования массива в строку задача решается даже слишком просто:

<?php
function maxnum($arr) {
 usort($arr,  function ($x, $y) { return strcmp("$y$x", "$x$y"); });
 return implode('', $arr);
}
 
echo maxnum(array(123, 789, 111)).'<br>';
echo maxnum(array(9,8,9,9));
?>

16.09.2018, 12:07 [1519 просмотров]


теги: php числа

К этой статье пока нет комментариев, Ваш будет первым