Last active
July 1, 2019 06:34
-
-
Save andrey-helldar/dd7fb4f1ef1877e22ea2635d6bc6be36 to your computer and use it in GitHub Desktop.
Необходимо написать функцию sortMat(array $mat): array, которая наиболее компактным кодом выполняет сортировку произвольной матрицы NxM: бОльшие по значению элементы должны располагаться ниже, слева направо.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/* | |
* Необходимо написать функцию sortMat(array $mat): array, | |
* которая наиболее компактным кодом выполняет сортировку | |
* произвольной матрицы NxM: бОльшие по значению элементы | |
* должны располагаться ниже, слева направо. | |
* | |
* Пример исходной матрицы: | |
* | |
* $mat = [ | |
* [6, 5, 13], | |
* [1, 4, 2], | |
* [3, 9, 8], | |
* [5, 10, 7], | |
* ]; | |
* | |
* результат выполнения функции sortMat для исходной матрицы $mat будет иметь вид: | |
* | |
* $result = [ | |
* [3, 2, 1], | |
* [5, 5, 4], | |
* [8, 7, 6], | |
* [13, 10, 9], | |
* ]; | |
*/ | |
function sortMat(array $arr): array { | |
$result = array_merge([], ...$arr); | |
rsort($result); | |
$result = array_chunk($result, 3); | |
sort($result); | |
return $result; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment