# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1166471 | aminabouakaz | Pyramids (IOI24_pyramids) | C++20 | 0 ms | 0 KiB |
#include <iostream>
#include <vector>
using namespace std;
vector<long long> psA;
vector<long long> psB;
void init(vector<int> a, vector<int> b) {
int n = a.size();
psA.resize(n + 1, 0);
psB.resize(n + 1, 0);
for (int i = 0; i < n; ++i) {
psA[i + 1] = psA[i] + a[i];
psB[i + 1] = psB[i] + b[i];
}
}
bool canTransform(int l, int r, int x, int y) {
long long sumA = psA[r + 1] - psA[l];
long long sumB = psB[y + 1] - psB[x];
return sumA == sumB;
}