This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "rect.h"
#ifndef EVAL
#include "grader.cpp"
#endif
#include <bits/stdc++.h>
using namespace std;
int n, m;
vector<vector<int>> a;
bool check(int r1, int c1, int r2, int c2){
for(int i=r1;i<=r2;i++){
for(int j=c1;j<=c2;j++){
int t = min(min(a[i][c1-1], a[i][c2+1]), min(a[r1-1][j], a[r2+1][j]));
if(a[i][j] >= t)return false;
}
}return true;
}
void print(int r1, int c1, int r2, int c2){
for(int i=r1;i<=r2;i++){
for(int j=c1;j<=c2;j++){
cout << a[i][j] << ' ';
}cout << '\n';
}cout << '\n';
}
long long count_rectangles(vector<vector<int>> a){
::a = a;
n = a.size();
m = a[0].size();
int ans = 0;
for(int i=1;i<n-1;i++){
for(int j=1;j<m-1;j++){
for(int I=i;I<n-1;I++){
for(int J=j;J<m-1;J++){
//~ if(check(i,j,I,J)){
//~ cout << i << ' ' << j << "; " << I << ' ' << J << '\n';
//~ print(i,j,I,J);
//~ }
ans += check(i,j,I,J);
}
}
}
}return ans;
}
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |