Submission #1164923

#TimeUsernameProblemLanguageResultExecution timeMemory
1164923AlgorithmWarriorVision Program (IOI19_vision)C++20
33 / 100
86 ms1220 KiB
#include <bits/stdc++.h>
#include "vision.h"

using namespace std;

int ind(int lin,int col,int W){
    return lin*W+col;
}

bool inmat(int lin,int col,int H,int W){
    return 0<=lin && lin<H && 0<=col && col<W;
}

int dist(int l1,int c1,int l2,int c2){
    return abs(l1-l2)+abs(c1-c2);
}

void construct_network(int H, int W, int K) {
    vector<int>ask;
    int l1,c1,l2,c2;
    for(l1=0;l1<H;++l1)
        for(c1=0;c1<W;++c1)
            for(l2=0;l2<H;++l2)
                for(c2=0;c2<W;++c2)
                    if((l1!=l2 || c1!=c2) && dist(l1,c1,l2,c2)==K){
                        int ind1=ind(l1,c1,W);
                        int ind2=ind(l2,c2,W);
                        ask.push_back(add_and({ind1,ind2}));
                    }
    add_or(ask);
}
#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...