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()
    }
}