程式語言 - LeetCode - C++ - 2946. Matrix Similarity After Cyclic Shifts



題目:


解答:

class Solution {
public:
    bool areSimilar(vector<vector<int>>& mat, int k) {
        int m = mat.size();
        int n = mat[0].size();

        k %= n;
        for (int i = 0; i < m; ++i) {
            for (int j = 0; j < n; ++j) {
                int v = mat[i][(j + k) % n];

                if (i % 2) {
                    v = mat[i][((j - k) + n) % n];
                }

                if (v != mat[i][j]) {
                    return false;
                }
            }
        }

        return true;
    }
};