C++ 暴力求解 注意元素类型为long long,异或xor符号为^
#include <iostream> #include <vector> using namespace std; int main() { int t, n, q; cin >> t; while (t--) { cin >> n >> q; vector<long long> a(n); for (int i=0; i<n; i++) { cin >> a[i]; } int l, r; while (q--) { cin >> l >> r; // f = x + y - x xor y long long f = a[l-1]; for (int i=l; i<r; i++) { f = f + a[i] - long(f ^ a[i]); } cout << f << endl; } } } // 64 位输出请用 printf("%lld")