Submission #170959

# Submission time Handle Problem Language Result Execution time Memory
170959 2019-12-26T19:18:12 Z MvC Vision Program (IOI19_vision) C++14
0 / 100
3 ms 872 KB
#include "vision.h"
#pragma GCC target("avx2")
#pragma GCC optimize("O3")
#pragma GCC optimize("unroll-loops")
#include <bits/stdc++.h>
#define rc(x) return cout<<x<<endl,0
#define pb push_back
#define mkp make_pair
#define in insert
#define er erase
#define fd find
#define fr first
#define sc second
typedef long long ll;
typedef long double ld;
const ll INF=0x3f3f3f3f3f3f3f3f;
const ll llinf=(1LL<<62);
const int inf=(1<<30);
const int nmax=1e5+50;
const int mod=1e9+7;
using namespace std;
int h,w,k,i,j,t,tp,a[250][250],x,y;
vector<int>rd1,rd2,ld1,ld2,ndr,ndl,vc,vc1,fin;
int anot(int x)
{
	return add_not(x);
}
int aand(vector<int>x)
{
	return add_and(x);
}
int axor(vector<int>x)
{
	return add_xor(x);
}
int aor(vector<int>x)
{
	return add_or(x);
}
void construct_network(int H,int W,int K) 
{
	h=H,w=W,k=K;
	for(i=0;i<h;i++)for(j=0;j<w;j++)a[i][j]=i*w+j;
	for(i=h-1;i>=0;i--)
	{
		vc.clear();
		for(j=0,t=i;j<w && t<h;j++,t++)vc.pb(a[t][j]);
		rd1.pb(aor(vc));
		vc.pb(ld1.back());
		rd2.pb(axor(vc));
	}
	for(j=1;j<w;j++)
	{
		vc.clear();
		for(i=0,t=j;i<h && t<w;i++,t++)vc.pb(a[i][t]);
		rd1.pb(aor(vc));
		vc.pb(ld1.back());
		rd2.pb(axor(vc));
	}
	for(i=h-1;i>=0;i--)
	{
		vc.clear();
		for(j=w-1,t=i;t<h && j>=0;j--,t++)vc.pb(a[t][j]);
		ld1.pb(aor(vc));
		vc.pb(ld1.back());
		ld2.pb(axor(vc));
	}
	for(j=w-2;j>=0;j--)
	{
		vc.clear();
		for(i=0,t=j;i<h && t>=0;i++,t--)vc.pb(a[i][t]);
		ld1.pb(aor(vc));
		vc.pb(ld1.back());
		ld2.pb(axor(vc));
	}
	for(tp=0;tp<2;tp++)
	{
		ndl.clear(),ndr.clear();
		for(i=k;i<(int)rd1.size();i++)
		{
			vc.clear(),vc1.clear();
			for(j=i;j>=i-k;j--)
			{
				vc.pb(rd1[j]);
				vc1.pb(rd2[j]);
			}
			x=aor(vc),y=axor(vc),y=anot(y),y=aand(vector<int>{x,y}),vc1.pb(y);
			ndr.pb(aor(vc1));
		}
		for(i=k;i<(int)ld1.size();i++)
		{
			vc.clear(),vc1.clear();
			for(j=i;j>=i-k;j--)
			{
				vc.pb(ld1[j]);
				vc1.pb(ld2[j]);
			}
			x=aor(vc),y=axor(vc),y=anot(y),y=aand(vector<int>{x,y}),vc1.pb(y);
			ndl.pb(aor(vc1));
		}
		x=aor(ndr),y=aor(ndl),fin.pb(aand(vector<int>{x,y}));
		k--;
	}
	aand(vector<int>{fin[0],anot(fin[1])});
}
# Verdict Execution time Memory Grader output
1 Runtime error 3 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 3 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 3 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 3 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 2 ms 376 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 3 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 3 ms 872 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 3 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -