LeetCode 1310.子数组异或查询

LeetCode 1310.子数组异或查询


问题描述

在这里插入图片描述

简要思路

简单前缀和。

代码

class Solution {
    
    
public:
    vector<int> xorQueries(vector<int>& arr, vector<vector<int>>& queries) {
    
    
        int n = arr.size();
        vector<int> s(n+1);
        s[0] = arr[0];

        for(int i = 1; i < n; i++){
    
    
            s[i] = s[i-1] ^ arr[i];
        }

        int a, b;
        int m = queries.size();
        vector<int> res;

        for(int i = 0; i < m; i++){
    
    
            a = queries[i][0];
            b = queries[i][1];
            if(a == 0) res.push_back(s[b]);
            else res.push_back(s[a-1] ^ s[b]);
            
        }

        return res;
    }
};

猜你喜欢

转载自blog.csdn.net/qq_45438600/article/details/117408866