Submission #738242

#TimeUsernameProblemLanguageResultExecution timeMemory
738242NeroZeinVision Program (IOI19_vision)C++17
8 / 100
1 ms300 KiB
#include "vision.h"
#include <bits/stdc++.h> 
using namespace std; 
 
int n, m;
 
void construct_network(int H, int W, int K) {
	n = H, m = W; 
	vector<pair<int, int>> pairs; 
	auto dis = [&](int i, int j, int ii, int jj) {
		return abs(ii - i) + abs(jj - j);
	};
	for (int ii = 0; ii < n; ++ii) {
		for (int jj = 0; jj < m; ++jj) {
			if (dis(0, 0, ii, jj) == K) {
				pairs.push_back({0, ii * m + jj});
			}
		}
	}
	int cur = n * m;
	vector<int> ask; 
	for (int i = 0; i < (int) pairs.size(); ++i) {
		vector<int> v; 
		v.push_back(pairs[i].first);
		v.push_back(pairs[i].second); 
		add_and(v); 
		ask.push_back(cur++); 
	}
	if (ask.empty()) {
		ask = vector<int> ({0, 0}); 
		add_xor(ask);
	}
	else {
		add_or(ask); 
	}
}
#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...