程式語言 - LeetCode - C++ - 3653. XOR After Range Multiplication Queries I



參考資訊:
https://github.com/doocs/leetcode/blob/main/solution/3600-3699/3653.XOR%20After%20Range%20Multiplication%20Queries%20I/README.md

題目:


解答:

class Solution {
public:
    int xorAfterQueries(vector<int>& nums, vector<vector<int>>& queries) {
        const int mod = 1e9 + 7;

        for (const auto& q : queries) {
            for (int i = q[0]; i <= q[1]; i+= q[2]) {
                nums[i] = (1LL * nums[i] * q[3]) % mod;
            }
        }

        int ans = 0;
        for (int n : nums) {
            ans ^= n;
        }

        return ans;
    }
};