제출 #219758

#제출 시각아이디문제언어결과실행 시간메모리
219758VEGAnnRectangles (IOI19_rect)C++14
37 / 100
5070 ms28408 KiB
#include <bits/stdc++.h>
#include "rect.h"
#define all(x) x.begin(),x.end()
#define PB push_back
#define sz(x) ((int)x.size())
using namespace std;
typedef long long ll;
const int N = 100100;
int n, m;
ll ans = 0;

long long count_rectangles(std::vector<std::vector<int> > a) {

    n = sz(a);
    m = sz(a[0]);

    if (n < 3 || m < 3) return 0;

    for (int r1 = 1; r1 < n - 1; r1++)
    for (int r2 = r1; r2 < n - 1; r2++)
    for (int c1 = 1; c1 < m - 1; c1++)
    for (int c2 = c1; c2 < m - 1; c2++){
        bool ok = 1;

        for (int i = r1; i <= r2 && ok; i++)
        for (int j = c1; j <= c2 && ok; j++){
            ok &= bool(a[i][j] < a[i][c1 - 1]);
            ok &= bool(a[i][j] < a[i][c2 + 1]);
            ok &= bool(a[i][j] < a[r2 + 1][j]);
            ok &= bool(a[i][j] < a[r1 - 1][j]);
        }

        ans += ok;
    }

	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...