灵茶八题代码
https://www.luogu.com.cn/blog/endlesscheng/post-ling-cha-ba-ti-ti-mu-lie-biao
1 子数组元素和的元素和
#include "bits/stdc++.h"
using namespace std;
using ll = long long;
int main() {
int n; cin >> n;
int a[n]; for (int i = 0; i < n; i++) cin >> a[i];
ll ans = 0;
for (int i = 0; i < n; i++) ans += a[i] * (i + 1LL) * (n - i);
cout << ans << endl;
}
2 子数组异或和的异或和
#include "bits/stdc++.h"
using namespace std;
int main() {
int n; cin >> n;
int a[n]; for (int i = 0; i < n; i++) cin >> a[i];
int ans = 0;
for (int i = 0; i < n; i++) if ((i + 1) * (n - i) & 1) ans ^= a[i];
cout << ans << endl;
}
3 子数组异或和的元素和
#include "bits/stdc++.h"
using namespace std;
using ll = long long;
int main() {
int n; cin >> n;
int a[n]; for (int i = 0; i < n; i++) cin >> a[i];
ll ans = 0;
for (int k = 0; k < 31; k++) {
int pre[n