#include "rect.h"
#include <bits/stdc++.h>
using namespace std;
#define MAXN 2500
#define nl '\n'
#define ff first
#define ss second
#define ll long long
#define ld long double
#define terminator main
#define pll pair<ll,ll>
#define add insert
#define append push_back
#define pii pair<int,int>
#define all(x) (x).begin(),(x).end()
int x[MAXN];
int mx[MAXN][MAXN];
ll count_rectangles(vector<vector<int>> a){
int n;
ll ans = 0;
n = a[0].size();
if(a.size() < 3) return ans;
for(int i = n - 2; i > 0; i--)
if(min(a[0][i], a[2][i]) > a[1][i])
x[i] = max(i, x[i + 1]);
for(int i = 1; i < n - 1; i++)
for(int j = i; j < n - 1; j++)
mx[i][j] = max(mx[i][j - 1], a[1][j]);
for(int i = 1; i < n - 1; i++)
for(int j = i; j < n -1; j++)
if(min(a[1][i - 1], a[1][j + 1]) > mx[i][j] && x[i] >= j)
ans++;
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... |