제출 #1291365

#제출 시각아이디문제언어결과실행 시간메모리
1291365MMihalevVision Program (IOI19_vision)C++20
0 / 100
5 ms1952 KiB
#include<iostream> #include<algorithm> #include<vector> #include "vision.h" using namespace std; const int MAX_N=2e3+3; int n,m,k; int tonum(int i,int j) { return i*m+j; } int xorcol[MAX_N]; int xorrow[MAX_N]; int allzeroxorrow,allzeroxorcol; void construct_network(int H, int W, int K) { n=H; m=W; k=K; vector<int>xorrowcells; for(int i=0;i<n;i++) { vector<int>cells; for(int j=0;j<m;j++) { cells.push_back(tonum(i,j)); } xorrow[i]=add_xor(cells); xorrowcells.push_back(xorrow[i]); } vector<int>xorcolcells; for(int j=0;j<m;j++) { vector<int>cells; for(int i=0;i<n;i++) { cells.push_back(tonum(i,j)); } xorcol[j]=add_xor(cells); xorcolcells.push_back(xorcol[j]); } allzeroxorrow=add_or(xorrowcells); allzeroxorrow=add_not(allzeroxorrow); allzeroxorcol=add_or(xorcolcells); allzeroxorcol=add_not(allzeroxorcol); vector<int>androwcons; for(int i=1;i<n;i++) { androwcons.push_back(add_and({xorrowcells[i-1],xorrowcells[i]})); } vector<int>andcolcons; for(int j=1;j<m;j++) { andcolcons.push_back(add_and({xorcolcells[j-1],xorcolcells[j]})); } int consrow1,conscol1; consrow1=add_or(androwcons); consrow1=add_and({consrow1,allzeroxorcol}); conscol1=add_or(andcolcons); conscol1=add_and({conscol1,allzeroxorrow}); add_or({conscol1,consrow1}); }
#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...