#include "vision.h"
#include <bits/stdc++.h>
using namespace std;
map<pair<int,int>,int>d;
int n,m;
int check(int i,int j,int k,int l)
{
if (min(min(i,j),min(k,l))<0||max(i,k)>=n||max(j,l)>=m)
return -1;
int ind=i*m+j,ind1=k*m+l;
if (ind>ind1)
swap(ind,ind1);
if (d.find({ind,ind1})==d.end())
d[{ind,ind1}]=add_and({ind,ind1});
return d[{ind,ind1}];
}
void construct_network(int N, int M, int k)
{
n=N;
m=M;
vector<int>ans;
for (int i=0;i<1;i++)
{
for (int j=0;j<1;j++)
{
for (int l=0;l<=k;l++)
{
int x[2]={k-l,-(k-l)},y[2]={l,-l};
for (auto f:x)
for (auto g:y)
{
int z=check(i,j,i+f,j+g);
if (z!=-1)
ans.push_back(z);
}
}
}
}
add_or(ans);
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |