# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
865802 | Lib | Vision Program (IOI19_vision) | C++14 | 7 ms | 1380 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#include "vision.h"
using namespace std;
vector <int> RowHasBlack;
vector <int> ColumnHasBlack;
vector <int> temp;
int OutputAns_BothRowColumnDifferent(int K, int x, int y){
//return ( ((RowHasBlack[1]-RowHasBlack[0]) + (ColumnHasBlack[1]-ColumnHasBlack[0]) == K) );
int res;
if(abs(RowHasBlack[1]-RowHasBlack[0]) + abs(ColumnHasBlack[1]-ColumnHasBlack[0]) == K){
res=x;
}else{
res=y;
}
RowHasBlack.clear();
ColumnHasBlack.clear();
return add_and({res,x});
//return RowHasBlack[1];
}
int OutputCert(int K){
return add_and({0,0});
}
void construct_network(int H, int W, int K){
RowHasBlack.clear();
ColumnHasBlack.clear();
int x,y;
for(int i=0;i<H;i++){
temp.clear();
for(int k=0;k<W;k++){
temp.push_back(i*W+k);
}
if(add_or(temp)){
RowHasBlack.push_back(i);
x=H*W+i;
}else{
y=W*i;
}
}
for(int i=0;i<W;i++){
temp.clear();
for(int k=0;k<H;k++){
temp.push_back(k*W+i);
}
if(add_or(temp)){
ColumnHasBlack.push_back(i);
}else{
y=i;
}
}
for(int i=0;i<H*W;i++){
if(add_not(i)){
y=i;
break;
}else{
x=i;
}
}
if(H*W==2){
OutputCert(K);
}else if(RowHasBlack.size()==2&&ColumnHasBlack.size()==2){
OutputAns_BothRowColumnDifferent(K,x,y);
}else{
if(RowHasBlack.size()==1){
RowHasBlack.push_back(RowHasBlack[0]);
}else{
ColumnHasBlack.push_back(ColumnHasBlack[0]);
}
OutputAns_BothRowColumnDifferent(K,x,y);
}
}
Compilation message (stderr)
# | 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... |