이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "soccer.h"
#include <bits/stdc++.h>
using namespace std;
#define rep(i, a, b) for(int i = a; i < (b); ++i)
#define trav(a, x) for(auto& a : x)
#define all(x) x.begin(), x.end()
#define sz(x) (int)(x).size()
typedef long long ll;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;
typedef vector<int> vi;
typedef vector<ll> vl;
const int MAXN = 2001;
int n;
int grid[MAXN][MAXN] = {0};
bool contains(pii p2, pii p1){
return (p1.first >= p2.first && p1.second <= p2.second);
}
int biggest_stadium(int N, vector<vi> F)
{
n = N;
rep(c1,0,n){
rep(c2,0,n){
grid[c1][c2] = F[c1][c2];
}
}
int x = 0;
int y = n-1;
rep(c1,0,n){
int emp = 0;
rep(c2,0,n){
emp += grid[c1][c2];
}
if(emp != n){
x = c1;
break;
}
}
for(int c1 = n-1; c1 >= 0; c1--){
int emp = 0;
rep(c2,0,n){
emp += grid[c1][c2];
}
if(emp != n){
y = c1;
break;
}
}
int lo = n;
int hi = -1;
bool sub = 0;
int ans = 0;
bool fail = 0;
vector<pii> intervals;
rep(c1,x,y+1){
int lo2 = n;
int hi2 = -1;
int tot = 0;
rep(c2,0,n){
if(grid[c1][c2] == 0){
tot++;
lo2 = min(lo2, c2);
hi2 = max(hi2, c2);
}
}
pii p1 = {lo2,hi2};
trav(p2, intervals){
if(!contains(p1,p2) && !contains(p2,p1)){
fail = 1;
}
}
intervals.push_back(p1);
ans += tot;
if(tot != hi2-lo2+1)fail = 1;
if(sub == 1){
if(lo2 < lo || hi2 > hi){
fail = 1;
}
}
else{
if(lo2 > lo || hi2 < hi){
if(lo2 >= lo && hi2 <= hi){
sub = 1;
}
else{
fail = 1;
}
}
}
lo = lo2;
hi = hi2;
}
if(!fail){
return ans;
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |