Submission #1166447

#TimeUsernameProblemLanguageResultExecution timeMemory
1166447aminabouakazPyramids (IOI24_pyramids)C++20
0 / 100
1095 ms4308 KiB
#include <vector>
#include <numeric>
#include <algorithm>
using namespace std;

vector<int> pyramidsA, pyramidsB;

void init(vector<int> A, vector<int> B) {
    pyramidsA = A;
    pyramidsB = B;
}

bool can_transform(int L, int R, int X, int Y) {
    vector<int> subA(pyramidsA.begin() + L, pyramidsA.begin() + R + 1);
    vector<int> subB(pyramidsB.begin() + X, pyramidsB.begin() + Y + 1);

    int sumA = accumulate(subA.begin(), subA.end(), 0);
    int sumB = accumulate(subB.begin(), subB.end(), 0);

    if (sumA != sumB) {
        return false;
    }

    sort(subA.begin(), subA.end());
    sort(subB.begin(), subB.end());

    return subA == subB;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...