# |
제출 시각 |
아이디 |
문제 |
언어 |
결과 |
실행 시간 |
메모리 |
1001010 |
2024-06-18T12:45:22 Z |
변재우(#10901) |
축구 경기장 (IOI23_soccer) |
C++17 |
|
1 ms |
2392 KB |
#include "soccer.h"
#include <bits/stdc++.h>
using namespace std;
const int Nmax=2010;
int L[Nmax][Nmax], R[Nmax][Nmax], D[Nmax][Nmax];
int X[Nmax][Nmax], Y[Nmax][Nmax], S[Nmax][Nmax];
int biggest_stadium(int N, std::vector<std::vector<int>> F)
{
int cnt=0;
for(int i=1; i<=N; i++) for(int j=1; j<=N; j++) {
cnt+=F[i-1][j-1], X[i][j]=X[i][j-1]+1-F[i-1][j-1], Y[i][j]=Y[i-1][j]+1-F[i-1][j-1];
S[i][j]=S[i][j-1]+S[i-1][j]-S[i-1][j-1]+1-F[i-1][j-1];
}
for(int i=1; i<=N; i++) {
for(int j=1; j<=N; j++) {
if(F[i-1][j-1]) L[i][j]=j;
else L[i][j]=L[i][j-1];
}
for(int j=N; j>=1; j--) {
if(F[i-1][j-1]) R[i][j]=j;
else R[i][j]=R[i][j+1];
}
}
for(int j=1; j<=N; j++) {
for(int i=N; i>=1; i--) {
if(F[i-1][j-1]) D[i][j]=i;
else D[i][j]=D[i+1][j];
}
}
for(int i=1; i<=N; i++) for(int j=1; j<=N; j++) if(!F[i-1][j-1]) {
int l=L[i][j], r=R[i][j], d=D[i][j];
if(l && d && S[N][l]-S[d-1][l]) return 0;
if(r && d && S[N][N]-S[N][r-1]-S[d-1][N]+S[d-1][r-1]) return 0;
if(l && X[i][l-1]) return 0;
if(d && Y[N][j]-Y[N][d]) return 0;
}
return N*N-cnt;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Partially correct |
0 ms |
344 KB |
partial |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
348 KB |
ok |
2 |
Incorrect |
1 ms |
2392 KB |
wrong |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
348 KB |
ok |
2 |
Incorrect |
1 ms |
2392 KB |
wrong |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Partially correct |
0 ms |
344 KB |
partial |
2 |
Correct |
1 ms |
348 KB |
ok |
3 |
Incorrect |
1 ms |
2392 KB |
wrong |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Partially correct |
0 ms |
344 KB |
partial |
2 |
Correct |
1 ms |
348 KB |
ok |
3 |
Incorrect |
1 ms |
2392 KB |
wrong |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Partially correct |
0 ms |
344 KB |
partial |
2 |
Correct |
1 ms |
348 KB |
ok |
3 |
Incorrect |
1 ms |
2392 KB |
wrong |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Partially correct |
0 ms |
344 KB |
partial |
2 |
Correct |
1 ms |
348 KB |
ok |
3 |
Incorrect |
1 ms |
2392 KB |
wrong |
4 |
Halted |
0 ms |
0 KB |
- |