제출 #1244013

#제출 시각아이디문제언어결과실행 시간메모리
1244013AmaarsaaVision Program (IOI19_vision)C++20
44 / 100
7 ms1980 KiB
#include<bits/stdc++.h>
#include "vision.h"


using namespace std;
using ll = int;


bool ask_or(ll lo, ll hi) {
	vector < int > v;

	for (int i = lo; i <= hi; i ++) v.push_back(i);
	return add_or(v);
}

void construct_network(int H, int W, int K) {
	int ind = H * W, i, j, x_hi, y_hi, r;
	vector < int > q;
	for (i = 0; i < H; i ++) {
		for (j = 0; j < W; j ++) {
			vector < int > v;
			for ( r = 0; r <= K; r ++) {
				x_hi = i + r;
				y_hi = j + (K- r);
				if ( x_hi >= 0 && x_hi < H && y_hi >= 0 && y_hi < W) v.push_back(x_hi * W + y_hi);
				x_hi = i + r;
				y_hi = j - (K- r);
				if ( x_hi >= 0 && x_hi < H && y_hi >= 0 && y_hi < W) v.push_back(x_hi * W + y_hi);
			}
			if ( v.size() == 0) continue;
			add_or(v);
			ind ++;
			v.clear();
			v.push_back(i * W + j);
			add_and(v);
			ind ++;
			v.clear();
			v.push_back(ind - 1);
			v.push_back(ind - 2);
			add_and(v);
			q.push_back(ind);
			ind ++;
		}
	}
	add_or(q);

}
#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...