제출 #1190501

#제출 시각아이디문제언어결과실행 시간메모리
1190501anmattroiSoccer Stadium (IOI23_soccer)C++17
1.50 / 100
223 ms63260 KiB
#include "soccer.h" #include <bits/stdc++.h> #define maxn 2005 using namespace std; int n, f[maxn][maxn], s[maxn][maxn]; int biggest_stadium(int N, vector<vector<int>> F) { n = N; for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) f[i][j] = F[i-1][j-1]; for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) s[i][j] = s[i-1][j] + s[i][j-1] - s[i-1][j-1] + 1 - f[i][j]; function<int(int, int, int, int)> getRect = [&](int u, int v, int x, int y) { return s[x][y] - s[u-1][y] - s[x][v-1] + s[u-1][v-1]; }; vector<int> d(4, 0); for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) if (f[i][j]) { d[0] |= getRect(1, j, i, j); d[1] |= getRect(i, j, n, j); d[2] |= getRect(i, 1, i, j); d[3] |= getRect(i, j, i, n); } if (d[0]&&d[1]) return 0; if (d[2]&&d[3]) return 0; return s[n][n]; }
#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...