Submission #1221712

#TimeUsernameProblemLanguageResultExecution timeMemory
1221712VMaksimoski008Vision Program (IOI19_vision)C++20
8 / 100
6 ms1352 KiB
#include "vision.h" #include <bits/stdc++.h> using namespace std; int id[205][205], c = 0; void construct_network(int n, int m, int k) { for(int i=0; i<n; i++) for(int j=0; j<m; j++) id[i][j] = c++; //(0, 0) e crno vector<int> row; for(int i=0; i<n; i++) { vector<int> v; for(int j=0; j<m; j++) v.push_back(id[i][j]); row.push_back(add_or(v)); } vector<int> col; for(int j=0; j<m; j++) { vector<int> v; for(int i=0; i<n; i++) v.push_back(id[i][j]); col.push_back(add_or(v)); } //dali e i > 1, j > 1 vector<int> res; for(int i=1; i<n; i++) if(k-i < m && k-i > 0) res.push_back(add_and({ row[i], col[k-i] })); //dali e i = 0 if(n > 1) { vector<int> vec_x; for(int i=1; i<n; i++) vec_x.push_back(add_not(row[i])); if(k < m) res.push_back(add_and({ add_and(vec_x), col[k] })); } else { if(k < m) add_or({ col[k] }); return ; } if(m > 1) { vector<int> vec_y; for(int j=1; j<m; j++) vec_y.push_back(add_not(col[j])); if(k < n) res.push_back(add_and({ add_and(vec_y), row[k] })); } else { if(k < n) add_or({ row[k] }); return ; } // assert(!res.empty()); add_or(res); }
#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...