제출 #1175336

#제출 시각아이디문제언어결과실행 시간메모리
1175336ThylOne축구 경기장 (IOI23_soccer)C++20
1.50 / 100
189 ms31772 KiB
#include "soccer.h"
#include<bits/stdc++.h>
using namespace std;
bool a_dans_b(pair<int,int> a, pair<int,int> b){
    return b.first<=a.first && a.second<=b.second;
}
int biggest_stadium(int N, std::vector<std::vector<int>> F)
{
    int empty = 0;
    int cnt= 0;
    vector<pair<int,int>> inters;
    for(int y = 0 ; y < N ; y++){
        int flag = 0;
        pair<int,int> inter = {-1,-1};
        for(int x = 0 ; x < N ; x++){
            if(F[y][x]==0)empty++;
            if(flag==0 && F[y][x])continue;
            if(flag<=1 && F[y][x]==0){
                if(flag==0)inter.first=x;
                inter.second=x;
                flag=1;
                cnt++;
            }
            if(flag==1 && F[y][x]){
                flag=2;
            }
        }
        inters.push_back(inter);
    }
    if(cnt!=empty){
        return 0;
    }else{
        bool ascending=true;
        for(int i = 0 ; i < N-1;i++){
            if(ascending && !a_dans_b(inters[i], inters[i+1]))
                ascending=false;
            if(!ascending && !a_dans_b(inters[i+1], inters[i]))
                return 0;
        }
        return cnt;
    }
}
#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...