Submission #1237474

#TimeUsernameProblemLanguageResultExecution timeMemory
1237474banganMosaic (IOI24_mosaic)C++20
12 / 100
1101 ms2162688 KiB
#include "mosaic.h"
#include <bits/stdc++.h>
#include <vector>
using namespace std;

#define ll long long

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 N = X.size();
	int Q = (int)T.size();
	vector a(N, vector<int>(N));
	a[0] = X;
	for (int i=0; i<N; i++) a[i][0] = Y[i];
	for (int i=1; i<N; i++) for (int j=1; j<N; j++) a[i][j] = (a[i][j-1] | a[i-1][j]) ^ 1;
	std::vector<long long> C(Q, 0);
	for (int i=0; i<Q; i++) {
		int r1=T[i], r2=B[i];
		int c1=L[i], c2=R[i];
		for (int r=r1; r<=r2; r++) for (int c=c1; c<=c2; c++) C[i] += a[r][c];
	}
	return C;
}
#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...