1class Solution {2public:3vector<vector<int>> shiftGrid(vector<vector<int>> &grid, int k) {4deque<int> dq;56for (int i = 0; i < grid.size(); i++) {7for (int j = 0; j < grid[i].size(); j++) {8dq.push_back(grid[i][j]);9}10}1112int last = dq.size() - 1;13while (k--) {14int a = dq[last];15dq.push_front(a);16dq.pop_back();17}1819int p = 0;2021for (int i = 0; i < grid.size(); i++) {22for (int j = 0; j < grid[i].size(); j++) {23grid[i][j] = dq[p];24p++;25}26}2728return grid;29}30};