# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
91829 | 2018-12-30T09:36:57 Z | emil_physmath | Chessboard (IZhO18_chessboard) | C++14 | 26 ms | 1272 KB |
#include <iostream> #include <stdio.h> #include <set> using namespace std; const int MAXK=100005; int mini[MAXK], maxi[MAXK], minj[MAXK], maxj[MAXK]; int IsWhite(int, int); int FindAns(int n, int k); int main() { int n, k; cin>>n>>k; for (int i=0; i<k; i++) scanf("%d%d%d%d", mini+i, minj+i, maxi+i, maxj+i); cout<<FindAns(n, k)<<'\n'; char I; cin >> I; return 0; } int FindAns(int n, int k) { int shouldWhite=0, shouldBlack=(n*n)/2; for (int i=0; i<k; i++) { if (IsWhite(maxi[i], maxj[i])) shouldWhite++; else shouldBlack--; } return min(shouldWhite+shouldBlack, n*n-(shouldWhite+shouldBlack)); } int IsWhite(int i, int j) { return ((i+j)%2==0); }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
2 | Incorrect | 2 ms | 256 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 26 ms | 1272 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 2 ms | 376 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 2 ms | 376 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 26 ms | 1272 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
2 | Incorrect | 2 ms | 256 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |