#include <iostream>
#include <vector>
#include <numeric>
class PyramidTransform {
public:
PyramidTransform(const std::vector<int>& A, const std::vector<int>& B)
: A(A), B(B) {}
bool canTransform(int L, int R, int X, int Y) {
int sumA = std::accumulate(A.begin() + L, A.begin() + R + 1, 0);
int sumB = std::accumulate(B.begin() + X, B.begin() + Y + 1, 0);
return sumA == sumB;
}
private:
std::vector<int> A;
std::vector<int> B;
};
PyramidTransform* pyramidTransform;
void init(std::vector<int> A, std::vector<int> B) {
pyramidTransform = new PyramidTransform(A, B);
}
bool can_transform(int L, int R, int X, int Y) {
return pyramidTransform->canTransform(L, R, X, Y);
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |