#include "soccer.h"
#include <bits/stdc++.h>
using namespace std;
#define fi first
#define se second
int biggest_stadium(int N, std::vector<std::vector<int>> F)
{
pair<int,int> tab[2][N];
int ans=0;
for (int i = 0; i < N; ++i){
tab[0][i].fi=tab[1][i].fi=1e9;
tab[0][i].se=tab[1][i].se=-1e9;
}
for (int i = 0; i < N; ++i)
{
bool test=false;
bool test1=false;
for (int j = 0; j < N; ++j)
{
if(F[i][j]==0){
tab[0][i].fi=min(tab[0][i].fi,j);
tab[0][i].se=max(tab[0][i].se,j);
ans++;
}
if(F[i][j]==0){
test=true;
}
if(F[i][j]==1&&test){
test1=true;
}
if(F[i][j]==0&&test1) return 0;
}
}
for (int i = 0; i < N; ++i)
{
bool test=false;
bool test1=false;
for (int j = 0; j < N; ++j)
{
if(F[j][i]==0){
tab[1][i].fi=min(tab[1][i].fi,j);
tab[1][i].se=max(tab[1][i].se,j);
}
if(F[j][i]==0) {
test=true;
}
if(F[j][i]==1&&test) {
test1=true;
}
if(F[j][i]==0&&test1) return 0;
}
}
//cout << "hey"<<endl;
pair<int,int> cur={0,N-1};
/*for (int i = 0; i < N; ++i)
{
cout << tab[0][i].fi<<" "<<tab[0][i].se<<endl;
}*/
for (int i = 0; i < N; ++i)
{
if(tab[0][i].fi>cur.se) return 0;
else if(tab[0][i].se<cur.fi) return 0;
cur.fi=max(cur.fi,tab[0][i].fi);
cur.se=min(cur.se,tab[0][i].se);
}
cur={0,N-1};
for (int i = 0; i < N; ++i)
{
if(tab[1][i].fi>cur.se) return 0;
else if(tab[1][i].se<cur.fi) return 0;
cur.fi=max(cur.fi,tab[1][i].fi);
cur.se=min(cur.se,tab[1][i].se);
}
return ans;
}
# | 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... |