제출 #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...