Submission #622495

#TimeUsernameProblemLanguageResultExecution timeMemory
622495cheissmartVision Program (IOI19_vision)C++14
44 / 100
21 ms2924 KiB
#include "vision.h"
#include <bits/stdc++.h>
#define F first
#define S second
#define V vector
#define MP make_pair
#define EB emplace_back
#define PB push_back
#define SZ(v) int((v).size())
#define ALL(v) (v).begin(), (v).end()

using namespace std;

typedef long long ll;
typedef pair<int, int> pi;
typedef V<int> vi;

const int INF = 1e9 + 7;

void construct_network(int H, int W, int K) {
	auto id = [&] (int i, int j) {
		return i * W + j;
	};
	vi aux;
	for(int i = 0; i < H; i++) {
		for(int j = 0; j < W; j++) {
			vi tt;
			for(int ii = 0; ii < H; ii++) if(abs(ii - i) <= K) {
				int dd = K - abs(ii - i);
				for(int jj:{j + dd, j - dd}) if(jj >= 0 && jj < W) {
					tt.PB(id(ii, jj));
				}
			}
			if(SZ(tt)) {
				int OR = add_or(tt);
				aux.PB(add_and({id(i, j), OR}));
			}
		}
	}
	add_or(aux);
}
#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...