1260. 二维网格迁移
简单构造模拟:
直接 O(1)算得每一列最终所在的列下标 tcol = (i + k) % m
(其中 i 为原本的列下标),同时 O(1) 算得当前列的首行元素在新列中的行下标 trow = ((i + k) / m) % n
,之后就是简单的遍历赋值操作。
列-(i + k) % m
行-((i + k) / m) % n
二维数组迁移可以看成是一维数组循环右移 k 次。
class Solution {
public
1260. 二维网格迁移
简单构造模拟:
直接 O(1)算得每一列最终所在的列下标 tcol = (i + k) % m
(其中 i 为原本的列下标),同时 O(1) 算得当前列的首行元素在新列中的行下标 trow = ((i + k) / m) % n
,之后就是简单的遍历赋值操作。
列-(i + k) % m
行-((i + k) / m) % n
二维数组迁移可以看成是一维数组循环右移 k 次。
class Solution {
public