Submission #1213063

#TimeUsernameProblemLanguageResultExecution timeMemory
1213063AvianshSoccer Stadium (IOI23_soccer)C++20
8 / 100
4595 ms412 KiB
#include "soccer.h" #include <bits/stdc++.h> using namespace std; int biggest_stadium(int n, vector<vector<int>> F) { int ans = 0; for(int mask = 1;mask<(1<<(n*n));mask++){ vector<vector<bool>>sel(n,vector<bool>(n)); int ind = 0; for(int i = 0;i<n;i++){ for(int j = 0;j<n;j++){ if((1<<ind)&mask){ sel[i][j]=1; } ind++; } } assert(ind==n*n); bool val = 1; for(int i = 0;i<n;i++){ for(int j = 0;j<n;j++){ if(sel[i][j]&&F[i][j]){ val=0; } } } if(!val) continue; for(int si = 0;si<n;si++){ for(int sj = 0;sj<n;sj++){ if(!sel[si][sj]) continue; for(int ei = 0;ei<n;ei++){ for(int ej = 0;ej<n;ej++){ if(si==ei&&sj==ej) continue; if(!sel[ei][ej]){ continue; } bool cas1 = 1; bool cas2 = 1; for(int i = min(si,ei);i<=max(si,ei);i++){ if(!sel[i][ej]){ cas1=0; } if(!sel[i][sj]){ cas2=0; } } for(int i = min(sj,ej);i<=max(sj,ej);i++){ if(!sel[si][i]){ cas1=0; } if(!sel[ei][i]){ cas2=0; } } if((!cas1)&&(!cas2)){ val=0; } } } } } if(val){ ans=max(ans,__builtin_popcount(mask)); } } return ans; }
#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...