제출 #974709

#제출 시각아이디문제언어결과실행 시간메모리
974709NemanjaSo2005Vision Program (IOI19_vision)C++17
0 / 100
14 ms1884 KiB
#include "vision.h"
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int N,M,K,rxor[205],cxor[205],ror[205],cor[205];
vector<int> bigor;
int getbit(int x,int y){
   return (x-1)*M+(y-1);
}
void construct_network(int h, int w, int k){
	N=h;
	M=w;
	K=k;
	for(int i=1;i<=N;i++){
      vector<int> A;
      for(int j=1;j<=M;j++)
         A.push_back(getbit(i,j));
      rxor[i]=add_xor(A);
      ror[i]=add_or(A);
	}
	for(int j=1;j<=M;j++){
      vector<int> A;
      for(int i=1;i<=N;i++)
         A.push_back(getbit(i,j));
      cxor[j]=add_xor(A);
      cor[j]=add_or(A);
	}
	vector<int> rx,cx;
	for(int i=1;i<=N;i++)
      rx.push_back(ror[i]);
   int brr=add_xor(rx);
   for(int i=1;i<=M;i++)
      cx.push_back(cor[i]);
   int brc=add_xor(cx);

	vector<int> ra,ca;
	for(int i=2;i<=N;i++){
      ra.push_back(add_and({rxor[i],rxor[i-1]}));
	}
	int in2r=add_or(ra);

	for(int i=2;i<=M;i++){
      ca.push_back(add_and({cxor[i],cxor[i-1]}));
	}
	int in2c=add_or(ca);


	int u1=add_and({in2c,brr});
	int u2=add_and({in2r,brc});
	add_or({u1,u2});
}
#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...