Submission #429315

#TimeUsernameProblemLanguageResultExecution timeMemory
429315PbezzVision Program (IOI19_vision)C++14
26 / 100
10 ms1132 KiB
#include "vision.h"
#include <bits/stdc++.h>

using namespace std;

#define ll long long
#define pb push_back
typedef pair<ll,ll>pii;

const ll MAXN = 9500;
const ll INF = 1e9+7;

void construct_network(int H, int W, int K){
	vector<int>Ns,fina;
	int d,a,i,j,f1,f2;

	if(H==1){
 
	for(i=0;i+K<W;i++){
	Ns = {i,i+K};
	d = add_and(Ns);
	fina.pb(d);
	}
 
	add_or(fina);
 return;
	}else if(W==1){
 
	for(i=0;i+K<H;i++){
	Ns = {i,i+K};
	d = add_and(Ns);
	fina.pb(d);
	}
 
	add_or(fina);
 return;
}


	int linha[H],coluna[W];

for(i=0;i<H;i++){
	vector<int>bruh;
	for(j=0;j<W;j++){
	bruh.pb(W*i+j);
	}
	linha[i] = add_or(bruh);
}

for(j=0;j<W;j++){
	vector<int>bruh;
	for(i=0;i<H;i++){
	bruh.pb(W*i+j);
	}
	coluna[j] = add_or(bruh);
}
//linha[0] e o index da memoria na qual esta o resultado
vector<int>bruh;
if(W>1){

	for(j=0;j<W-1;j++){
	Ns={coluna[j],coluna[j+1]};
	bruh.pb(add_and(Ns));
}

	d = add_or(bruh);//tem de haver algumas duas colunas

bruh.clear();
	for(i=0;i<H;i++){
	bruh.pb(linha[i]);
}

	a = add_xor(bruh);//#linhas com algo tem de ser impar
	Ns={d,a};
	f1=add_and(Ns);
}
if(H>1){
bruh.clear();
	for(i=0;i<H-1;i++){
	Ns={linha[i],linha[i+1]};
	bruh.pb(add_and(Ns));
}

	d = add_or(bruh);//tem de haver algumas duas linhas

bruh.clear();
	for(j=0;j<W;j++){
	bruh.pb(coluna[j]);
}

	a = add_xor(bruh);//#colunas com algo tem de ser impar
	Ns={d,a};
	f2=add_and(Ns);
}

	Ns={f1,f2};
	add_or(Ns);



}

Compilation message (stderr)

vision.cpp: In function 'void construct_network(int, int, int)':
vision.cpp:96:4: warning: 'f1' may be used uninitialized in this function [-Wmaybe-uninitialized]
   96 |  Ns={f1,f2};
      |  ~~^~~~~~~~
vision.cpp:96:4: warning: 'f2' may be used uninitialized in this function [-Wmaybe-uninitialized]
#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...