Submission #974703

#TimeUsernameProblemLanguageResultExecution timeMemory
974703NemanjaSo2005Vision Program (IOI19_vision)C++17
44 / 100
219 ms1940 KiB
#include "vision.h"
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int N,M,K;
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 i1=1;i1<=N;i1++)
      for(int j1=1;j1<=M;j1++){
         vector<int> V;
         for(int i2=1;i2<=N;i2++)
            for(int j2=1;j2<=M;j2++){
               if(j2<j1)
                  continue;
               if(j2==j1 and i2<i1)
                  continue;
               if(abs(i1-i2)+abs(j1-j2)!=K)
                  continue;
               V.push_back(getbit(i2,j2));
             //  cout<<i1<<" "<<j1<<"    "<<i2<<" "<<j2<<endl;
            }
         if(V.size()==0)
            continue;

        /* cout<<i1<<" "<<j1<<" OROVI:"<<endl;
         for(int x:V)
            cout<<x<<" ";
         cout<<endl;
*/
         int a=0;
         if(V.size()==1)
            a=V[0];
         else
            a=add_or(V);
         bigor.push_back(add_and({a,getbit(i1,j1)}));
      }
   add_or(bigor);
}
#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...