题解 | #向左移动牛群II#

向左移动牛群II

https://www.nowcoder.com/practice/2467ddd80a2942abbaa752f3c874dd79

知识点

数学公式

思路

对于第i行第j个点(从0开始看),在矩阵中的值为:

int ii = (i + k) % n;

int jj = (j + k) % n;

nums[i][j] = n * ii + jj + 1;

代码c++

class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param n int整型 
     * @param k int整型 
     * @return int整型vector<vector<>>
     */
    vector<vector<int> > rotateII(int n, int k) {
        // write code here
       vector<vector<int>>nums(n,vector<int>(n));
         for (int i = 0; i < n; i++)
            for (int j = 0; j < n; j++) {
                int ii = (i + k) % n;
                int jj = (j + k) % n;
                nums[i][j] = n * ii + jj + 1;
              
            }

        return nums;
    }
};
全部评论

相关推荐

自由水:笑死了,敢这么面试不敢让别人说
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务