#include "vision.h"
#include <bits/stdc++.h>
using namespace std;
void construct_network(int h, int w, int k)
{
map<int,vector<int>> mp, mp1;
for (int i=0;i<h;i++)
for (int j=0;j<w;j++)
mp[i+j].push_back(i*w+j),
mp1[i-j].push_back(i*w+j);
vector<int> v, v1;
for (auto [i,x]:mp)
v.push_back(add_or(x));
for (auto [i,x]:mp1)
v1.push_back(add_or(x));
vector<int> p,p1;
for (int i=0;i+k<v.size();i++)
p.push_back(add_and({v[i],v[i+k]}));
for (int i=0;i+k<v1.size();i++)
p1.push_back(add_and({v1[i],v1[i+k]}));
vector<int> q,q1;
for (int i=0;i+k+1<v.size();i++)
{
vector<int> t;
for (int j=i+k+1;j<v.size();j++)
t.push_back(v[j]);
q.push_back(add_and({v[i],add_or(t)}));
}
for (int i=0;i+k+1<v1.size();i++)
{
vector<int> t;
for (int j=i+k+1;j<v1.size();j++)
t.push_back(v1[j]);
q1.push_back(add_and({v1[i],add_or(t)}));
}
int f=add_and({add_or(p),add_not(add_or(q1))});
int s=add_and({add_or(p1),add_not(add_or(q))});
add_or({f,s});
}
# | 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... |