(UPD: 2024-12-04 14:48 UTC) Judge is not working due to Cloudflare incident. (URL) We can do nothing about it, sorry. After the incident is resolved, we will grade all submissions.

Submission #413844

#TimeUsernameProblemLanguageResultExecution timeMemory
413844TLP39Quality Of Living (IOI10_quality)C++14
100 / 100
2025 ms140080 KiB
#include "quality.h" #include<bits/stdc++.h> int r,c; int h,w; int med; int tot[3001][3001]; int hi,low,av; bool isntable(int Q[3001][3001]) { for(int i=1;i<=r;i++) { for(int j=1;j<=c;j++) { tot[i][j]=(int)(Q[i-1][j-1]>=av); tot[i][j]+=(tot[i][j-1]+tot[i-1][j]-tot[i-1][j-1]); } } for(int i=h;i<=r;i++) { for(int j=w;j<=c;j++) { if(tot[i][j]-tot[i-h][j]-tot[i][j-w]+tot[i-h][j-w]<med) return true; } } return false; } int rectangle(int R, int C, int H, int W, int Q[3001][3001]) { r=R; c=C; h=H; w=W; med=((h*w)+1)>>1; hi=r*c+1; low=1; memset(tot,0,sizeof tot); while(hi>low) { av=(hi+low)>>1; if(isntable(Q)) hi=av; else low=av+1; } return hi-1; }
#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...