https://leetcode.com/problems/matrix-cells-in-distance-order/description/ | Easy |
---|
Дана матрица размером rows x cols
и координаты ячейки (rCenter, cCenter)
. Необходимо вернуть список всех ячеек матрицы, отсортированных по возрастанию манхэттенского расстояния от ячейки (rCenter, cCenter)
. Манхэттенское расстояние между двумя ячейками (r1, c1)
и (r2, c2)
вычисляется как |r1 - r2| + |c1 - c2|
.
class Solution {
fun allCellsDistOrder(rows: Int, cols: Int, rCenter: Int, cCenter: Int): Array<IntArray> {
val result = mutableListOf<IntArray>()
for (r in 0 until rows) {
for (c in 0 until cols) {
result.add(intArrayOf(r, c))
}
}
result.sortBy { Math.abs(it[0] - rCenter) + Math.abs(it[1] - cCenter) }
return result.toTypedArray()
}
}