Submission #1233651

#TimeUsernameProblemLanguageResultExecution timeMemory
1233651msrivera1404Mosaic (IOI24_mosaic)C++20
7 / 100
78 ms12872 KiB
#include "mosaic.h" #include <iostream> #include <vector> #include<bits/stdc++.h> std::vector<long long> mosaic(std::vector<int> X, std::vector<int> Y, std::vector<int> T, std::vector<int> B, std::vector<int> L, std::vector<int> R) { int Q = (int)T.size(); int N=(int)X.size(); // std::vector <std::vector <int>> mosaico(N, std::vector <int>(N)); // for(int j=0; j<N; ++j){ // mosaico[0][j]=X[j]; // } // for(int i=0;i<N; ++i){ // mosaico[i][0]=Y[i]; // } // for(int i=1; i<N;++i){ // for(int j=1; j<N; ++j){ // if(mosaico[i-1][j]==0 && mosaico[i][j-1]==0){ // mosaico[i][j]=1; // } // else{ // mosaico[i][j]=0; // } // } // } // std::vector <long long> respuestas(Q); // for(int k=0; k<Q; ++k){ // long long current_blacks=0; // int r1=T[k]; // int r2=B[k]; // int c1=L[k]; // int c2=R[k]; // for(int i=r1; i<=r2; ++i){ // for(int j=c1; j<=c2; ++j){ // if(mosaico[i][j]==1){ // current_blacks++; // } // } // } // respuestas[k]=current_blacks; // } std::vector <long long> respuestas(Q); std::vector <long long> prefix_sums(N+1, 0); std::partial_sum(X.begin(), X.end(), prefix_sums.begin()+1); for(int k=0; k<Q; ++k){ long long current_blacks=0; int r1=T[k]; int c1=L[k]; int c2=R[k]; current_blacks=prefix_sums[c2+1]-prefix_sums[c1]; respuestas[k]=current_blacks; } return respuestas; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...