題目描述
給出 R 行 C 列的矩陣,其中的單元格的整數座標爲 (r, c),滿足 0 <= r < R 且 0 <= c < C。
另外,我們在該矩陣中給出了一個座標爲 (r0, c0) 的單元格。
返回矩陣中的所有單元格的座標,並按到 (r0, c0) 的距離從最小到最大的順序排,其中,兩單元格(r1, c1) 和 (r2, c2) 之間的距離是曼哈頓距離,|r1 - r2| + |c1 - c2|。(你可以按任何滿足此條件的順序返回答案。)
算法思路
基於sorted函數。
self.r0,self.c0=r0,c0
l=[(i,j)for i in range(R)for j in range(C)]
def h(i):
return abs(i[0]-self.r0)+abs(i[1]-self.c0)
return sorted(l,key=h)
執行用時 :128 ms, 在所有 Python 提交中擊敗了83.74%的用戶
內存消耗 :14.7 MB, 在所有 Python 提交中擊敗了100.00%的用戶