Submission #300957

# Submission time Handle Problem Language Result Execution time Memory
300957 2020-09-17T15:29:02 Z MickyOr Vision Program (IOI19_vision) C++17
14 / 100
65 ms 6004 KB
#include "vision.h"
#include <bits/stdc++.h>
#define fore(i, b, e) for (int i = b; i < (int)e; ++i)
#define pb push_back

using namespace std;

typedef vector<int> vi;

vi diagL[410], diagR[410];

int solve(int H, int W, int k) {
	vi resR, resL;
	vi v, pref;
	fore(i, 0, H+W-1) {
		v.pb(add_or(diagL[i]));
		pref.pb(add_or(v));
		if (i > 0) {
			if (i >= k) {
				int tmp = add_xor({pref[i-1], pref[i-k]});
				resL.pb( add_and({v.back(), tmp}) );
			}
			else {
				resL.pb( add_and({v.back(), pref[i-1]}) );
			}
		}
	}
	v.clear();
	pref.clear();
	fore(i, 0, H+W-1) {
		v.pb(add_or(diagR[i]));
		pref.pb(add_or(v));
		if (i > 0) {
			if (i >= k) {
				int tmp = add_xor({pref[i-1], pref[i-k]});
				resR.pb( add_and({v.back(), tmp}) );
			}
			else if (i == k-1) {
				resR.pb( add_and({v.back(), pref[i-1]}) );
			}
		}
	}
	int rL = add_or(resL);
	int rR = add_or(resR);
	return add_and({rL, rR});
}

void construct_network(int H, int W, int K) {
	fore(i, 0, H) {
		fore(j, 0, W) {
			diagL[i+j].pb(i*W + j);
			diagR[i-j+W-1].pb(i*W + j);
		}
	}
	if (H+W-2 == K) {
		add_not(solve(H, W, K));
	}
	else {
		add_xor({solve(H, W, K), solve(H, W, K+1)});
	}
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 1 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 1 ms 384 KB Output is correct
6 Correct 0 ms 384 KB Output is correct
7 Correct 1 ms 384 KB Output is correct
8 Incorrect 1 ms 384 KB on inputs (0, 1), (0, 2), expected 0, but computed 1
9 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 1 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 1 ms 384 KB Output is correct
6 Correct 0 ms 384 KB Output is correct
7 Correct 1 ms 384 KB Output is correct
8 Incorrect 1 ms 384 KB on inputs (0, 1), (0, 2), expected 0, but computed 1
9 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 1 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 1 ms 384 KB Output is correct
6 Correct 0 ms 384 KB Output is correct
7 Correct 1 ms 384 KB Output is correct
8 Incorrect 1 ms 384 KB on inputs (0, 1), (0, 2), expected 0, but computed 1
9 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 1 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 1 ms 384 KB Output is correct
6 Correct 0 ms 384 KB Output is correct
7 Correct 1 ms 384 KB Output is correct
8 Incorrect 1 ms 384 KB on inputs (0, 1), (0, 2), expected 0, but computed 1
9 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 13 ms 1280 KB Output is correct
2 Incorrect 11 ms 1280 KB on inputs (0, 100), (0, 101), expected 0, but computed 1
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 1 ms 384 KB Output is correct
3 Correct 9 ms 944 KB Output is correct
4 Incorrect 7 ms 916 KB on inputs (0, 0), (16, 14), expected 0, but computed 1
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 65 ms 6004 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 8 ms 904 KB Output is correct
4 Correct 13 ms 1412 KB Output is correct
5 Correct 11 ms 1280 KB Output is correct
6 Correct 11 ms 1280 KB Output is correct
7 Correct 48 ms 3444 KB Output is correct
8 Correct 34 ms 3436 KB Output is correct
9 Correct 60 ms 6004 KB Output is correct
10 Correct 1 ms 360 KB Output is correct
11 Correct 0 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 1 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 1 ms 384 KB Output is correct
6 Correct 0 ms 384 KB Output is correct
7 Correct 1 ms 384 KB Output is correct
8 Incorrect 1 ms 384 KB on inputs (0, 1), (0, 2), expected 0, but computed 1
9 Halted 0 ms 0 KB -