Submission #861678

#TimeUsernameProblemLanguageResultExecution timeMemory
861678faustaadpSoccer Stadium (IOI23_soccer)C++17
12 / 100
4573 ms80976 KiB
#include "soccer.h" #include<bits/stdc++.h> typedef long long ll; using namespace std; #define pb push_back ll b[2010][2010]; int cek(int N, std::vector<std::vector<int>> F) { ll sum = 0; for(ll i = 0; i < N; i++) for(ll j = 0; j < N; j++) sum += (1 - F[i][j]); ll te = 0; for(ll i = 0; i < N; i++) for(ll j = 0; j < N; j++) { if(F[i][j])continue; ll ha = 0; te++; for(ll k = i; k < N; k++) { if(F[k][j])break; for(ll l = j; l < N; l++) { if(F[k][l])break; ha += (b[k][l] != te); b[k][l] = te; } for(ll l = j; l >= 0; l--) { if(F[k][l])break; ha += (b[k][l] != te); b[k][l] = te; } } // cout << ha << "_\n"; for(ll k = i; k >= 0; k--) { if(F[k][j])break; for(ll l = j; l < N; l++) { if(F[k][l])break; ha += (b[k][l] != te); b[k][l] = te; } for(ll l = j; l >= 0; l--) { if(F[k][l])break; ha += (b[k][l] != te); b[k][l] = te; } } for(ll k = j; k < N; k++) { if(F[i][k])break; for(ll l = i; l < N; l++) { if(F[l][k])break; ha += (b[l][k] != te); b[l][k] = te; } for(ll l = i; l >= 0; l--) { if(F[l][k])break; ha += (b[l][k] != te); b[l][k] = te; } } for(ll k = j; k >= 0; k--) { if(F[i][k])break; for(ll l = i; l < N; l++) { if(F[l][k])break; ha += (b[l][k] != te); b[l][k] = te; } for(ll l = i; l >= 0; l--) { if(F[l][k])break; ha += (b[l][k] != te); b[l][k] = te; } } // cout << ha << "_\n"; if(ha != sum) return 0; } return sum; } int biggest_stadium(int N, std::vector<std::vector<int>> F) { return cek(N, F); // for(ll i = 0; i < N; i++) // for(ll j = 0; j < N; j++) // { // if(F[i][j]) // { // return N * N - min(i + 1, N - i) * min(j + 1, N - j); // } // } // return 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...