답안 #533839

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
533839 2022-03-07T11:52:07 Z jamezzz Vision Program (IOI19_vision) C++17
0 / 100
14 ms 1484 KB
#include "vision.h"
#include <bits/stdc++.h>
using namespace std;

#define pf printf
#define pb push_back

vector<int> qry,qry2;
int l[405],r[405];

int add_and(int a,int b){
	vector<int> v{a,b};
	return add_and(v);
}

int add_or(int a,int b){
	vector<int> v{a,b};
	return add_or(v);
}

void construct_network(int H,int W,int K){
	for(int i=0;i<H+W-1;++i){
		for(int h=0;h<H;++h){
			if(h+W-1<i)continue;
			qry.pb(h*W+(i-h));
		}
		l[i]=add_xor(qry);
		qry.clear();
	}
	for(int i=0;i<H+W-1;++i){//h-w=i-(W-1)
		for(int h=0;h<H;++h){
			if(h-i>0||h-i<=-W)continue;
			qry.pb(h*W+(h-i+W-1));
		}
		r[i]=add_xor(qry);
		qry.clear();
	}
	
	int la,lb,ra,rb;
	for(int i=0;i<H+W-2;++i){
		for(int j=i+1;j<=i+K;++j)qry.pb(l[j]);
		qry2.pb(add_and(l[i],add_or(qry)));
		qry.clear();
	}
	la=add_or(qry2);
	qry2.clear();
	if(K!=1){
		for(int i=0;i<H+W-2;++i){
			for(int j=i+1;j<=i+K-1;++j)qry.pb(l[j]);
			qry2.pb(add_and(l[i],add_or(qry)));
			qry.clear();
		}
		lb=add_or(qry2);
		qry2.clear();
	}
	else{
		for(int i=0;i<H+W-1;++i)qry.pb(l[i]);
		lb=add_not(add_or(qry));
	}
	
	for(int i=0;i<H+W-2;++i){
		for(int j=i+1;j<=i+K;++j)qry.pb(r[j]);
		qry2.pb(add_and(r[i],add_or(qry)));
		qry.clear();
	}
	ra=add_or(qry2);
	qry2.clear();
	if(K!=1){
		for(int i=0;i<H+W-2;++i){
			for(int j=i+1;j<=i+K-1;++j)qry.pb(r[j]);
			qry2.pb(add_and(r[i],add_or(qry)));
			qry.clear();
		}
		rb=add_or(qry2);
		qry2.clear();
	}
	else{
		for(int i=0;i<H+W-1;++i)qry.pb(r[i]);
		rb=add_not(add_or(qry));
	}
	
	add_and(add_and(la,ra),add_or(add_not(lb),add_not(rb)));
	//add_or(add_and(la,add_not(lb)),add_and(ra,add_not(rb)));
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Incorrect 1 ms 292 KB on inputs (0, 0), (1, 0), expected 1, but computed 0
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Incorrect 1 ms 292 KB on inputs (0, 0), (1, 0), expected 1, but computed 0
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Incorrect 1 ms 292 KB on inputs (0, 0), (1, 0), expected 1, but computed 0
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Incorrect 1 ms 292 KB on inputs (0, 0), (1, 0), expected 1, but computed 0
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 8 ms 924 KB Output is correct
3 Correct 12 ms 928 KB Output is correct
4 Correct 14 ms 1484 KB Output is correct
5 Incorrect 3 ms 588 KB on inputs (1, 0), (3, 0), expected 1, but computed 0
6 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 204 KB on inputs (0, 0), (0, 1), expected 1, but computed 0
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 10 ms 1476 KB Output is correct
2 Incorrect 1 ms 296 KB on inputs (0, 0), (0, 1), expected 1, but computed 0
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Incorrect 1 ms 292 KB on inputs (0, 0), (1, 0), expected 1, but computed 0
4 Halted 0 ms 0 KB -