Submission #1233815

#TimeUsernameProblemLanguageResultExecution timeMemory
1233815jundiVision Program (IOI19_vision)C++20
0 / 100
6 ms1160 KiB
#include <bits/stdc++.h>
#include"vision.h"
using namespace std;
void construct_network(int h,int w,int k){
    int n=h*w;
    int not0=add_not(0);
    vector<int> tmp={0,not0};
    int zero_signal=add_and(tmp);
    vector<int> vec;
    for(int i=0;i<h;i++){
        for(int j=0;j<w;j++){
            if(i==0&&j==0)continue;
            if(i+j==k){
                vec.push_back(i*w+j);
            }
        }
    }
    unordered_set<int> re(vec.begin(),vec.end());
    vector<int> black;
    for(int i=1;i<n;i++){
        if(re.find(i)==re.end()){
            black.push_back(i);
        }
    }
    int blackor=add_or(black);
    int a1=add_not(blackor);
    vector<int> output;
    for(int j:vec){
        vector<int> input;
        for(int k:vec){
            if(k==j)continue;
            input.push_back(k);
        }
        int otheror;
        if(input.empty()){
            otheror=zero_signal;
        }else{
            otheror=add_or(input);
        }
        int a2=add_not(otheror);
        vector<int> inputs={0,j,a1,a2};
        output.push_back(add_and(inputs));
    }
    add_or(output);
}
#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...