답안 #256998

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
256998 2020-08-03T13:46:27 Z b00n0rp Vision Program (IOI19_vision) C++17
0 / 100
9 ms 1152 KB
#include "vision.h"
#include<bits/stdc++.h>
using namespace std;

#define REP(i,n) for(int i = 0; i < n; i ++)
#define FOR(i,a,b) for(int i = a; i < b; i++)
#define vi vector<int>
#define pb push_back

vi xorrow,xorcol;
int diffrow[205],diffcol[205];

void construct_network(int H, int W, int K){
	// srand(time(0));
	int cnt = 0;
	REP(i,H){
		vi v;
		REP(j,W) v.pb(i*W+j);
		xorrow.pb(add_xor(v));
		cnt++;
	}
	REP(j,W){
		vi v;
		REP(i,H) v.pb(i*W+j);
		xorcol.pb(add_xor(v));
		cnt++;
	}
	int cur = add_or(xorrow);
	diffrow[0] = add_not(cur);
	cur = add_or(xorcol);
	diffcol[0] = add_not(cur);
	cnt+=4;
	vi ignore;
	if(K > 80 or K >= 105) ignore = {41,49,70,77};
	else ignore = {-1,-1,-1,-1};
	FOR(k,1,K+1){
		vi vrow,vcol;
		if((!(k == ignore[0] or k == ignore[1] or k == ignore[2] or k == ignore[3])) and k+W-1 >= K)
		REP(i,H-k){
			vrow.pb(add_and({xorrow[i],xorrow[i+k]}));
			cnt++;
		}
		if((!(k == K-ignore[0] or k == K-ignore[1] or k == K-ignore[2] or k == K-ignore[3])) and k+H-1 >= W)
		REP(i,W-k){
			vcol.pb(add_and({xorcol[i],xorcol[i+k]}));
			cnt++;
		}
		if(vrow.size()){
			diffrow[k] = add_or(vrow);
			cnt++;
		}
		else diffrow[k] = -1;

		if(vcol.size()){
			diffcol[k] = add_or(vcol);
			cnt++;
		}
		else diffcol[k] = -1;
	}
	vi ans;
	REP(k,K+1){
		if(diffrow[k] == -1 or diffcol[K-k] == -1) continue;

		ans.pb(add_and({diffrow[k],diffcol[K-k]}));
		cnt++;
	}
	// cout << cnt << " :-<\n";
	add_or(ans);
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 256 KB WA in grader: Instruction with no inputs
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 256 KB WA in grader: Instruction with no inputs
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 256 KB WA in grader: Instruction with no inputs
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 256 KB WA in grader: Instruction with no inputs
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 384 KB WA in grader: Instruction with no inputs
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 256 KB Output is correct
2 Correct 0 ms 256 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 3 ms 640 KB Output is correct
5 Correct 2 ms 640 KB Output is correct
6 Incorrect 2 ms 512 KB on inputs (0, 0), (77, 18), expected 1, but computed 0
7 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 9 ms 1152 KB Output is correct
2 Correct 0 ms 256 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Incorrect 3 ms 384 KB on inputs (27, 30), (27, 31), expected 1, but computed 0
5 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 256 KB WA in grader: Instruction with no inputs
2 Halted 0 ms 0 KB -