#include <bits/stdc++.h>
using namespace std;
int rectangle(int h,int w,int x,int y,int A[3001][3001]){
vector B(h+1,vector<int>(w+1));
int l(0),r(h*w),mid;
while(r-l>1){
mid = (l+r)/2;
for (int i(0);i < h;++i) for (int k(0);k < w;++k) B[i+1][k+1] = B[i+1][k]+B[i][k+1]-B[i][k]+(A[i][k]>mid);
bool f = 0;
for (int i(x);i <= h;++i) for (int k(y);k <= w;++k) f |= (B[i][k]-B[i-x][k]-B[i][k-y]+B[i-x][k-y]>x*y/2+1);
if (f) r = mid;
else l = mid;
}
return r;
}
# | 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... |