#include <bits/stdc++.h>
#include "vision.h"
using namespace std;
void construct_network(int h, int w, int k) {
vector<int> Ns;
// Ns = {0, 1};
// int a = add_and(Ns);
// Ns = {0, a};
// int b = add_or(Ns);
// Ns = {0, 1, b};
// int c = add_xor(Ns);
// add_not(c);
int cnt = 0;
vector <int> v;
for(int x = 0; x < h; x++){
for(int y = 0; y < w; y++){
Ns.clear();
for(int x2 = 0; x2 < h; x2++){
int y2 = y + k - abs(x - x2);
if((y < y2 || (y == y2 && x < x2)) && y2 < w) Ns.push_back(x2 * w + y2);
}
if(Ns.empty()) continue;
// cout << "OR ";
// for(int i = 0; i < Ns.size(); i++){
// cout << Ns[i] << ' ';
// }
// cout << endl;
if(Ns.size() == 1) v.push_back(add_and({x * w + y, Ns[0]}));
else v.push_back(add_and({x * w + y, add_or(Ns)}));
}
}
// for(int i = 0; i < v.size(); i++){
// cout << v[i] << ' ';
// }
// cout << endl;
add_or(v);
}
# | 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... |