Submission #153428

#TimeUsernameProblemLanguageResultExecution timeMemory
153428myungwooVision Program (IOI19_vision)C++14
44 / 100
21 ms3184 KiB
#include <bits/stdc++.h>
#include "vision.h"
using namespace std;

int num[201][201];

void construct_network(int H, int W, int K)
{
	int idx = 0;
	for (int i=1;i<=H;i++) for (int j=1;j<=W;j++) num[i][j] = idx++;
	vector <int> or_arr;
	for (int i=1;i<=H;i++) for (int j=1;j<=W;j++){
		vector <int> xor_arr;
		for (int dy=-K;dy<=K;dy++){
			for (int sx=-1;sx<2;sx+=2){
				int dx = sx*(K-abs(dy));
				int y = i+dy, x = j+dx;
				if (y < 1 || y > H || x < 1 || x > W) continue;
				xor_arr.push_back(num[y][x]);
			}
		}
		if (xor_arr.empty()) continue;
		int x = add_or(xor_arr);
		or_arr.push_back(add_and({x, num[i][j]}));
	}
	add_or(or_arr);
}
#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...