Submission #1165930

#TimeUsernameProblemLanguageResultExecution timeMemory
1165930aminabouakazPyramids (IOI24_pyramids)C++20
0 / 100
1095 ms5036 KiB
#include <vector> using namespace std; vector<int> pyramidsA, pyramidsB; vector<int> sumA, sumB; void init(vector<int> A, vector<int> B) { pyramidsA = A; pyramidsB = B; sumA = A; sumB = B; for (int i = 1; i < A.size(); ++i) { sumA[i] += sumA[i - 1]; sumB[i] += sumB[i - 1]; } } bool can_transform(int L, int R, int X, int Y) { if (sumA[R] - (L > 0 ? sumA[L - 1] : 0) != sumB[Y] - (X > 0 ? sumB[X - 1] : 0)) { return false; } int diffA = 0, diffB = 0; for (int i = 0; i <= R - L; ++i) { diffA += pyramidsA[L + i] - (L + i > L ? pyramidsA[L + i - 1] : 0); diffB += pyramidsB[X + i] - (X + i > X ? pyramidsB[X + i - 1] : 0); if (diffA != diffB) { return false; } } return true; }
#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...