内容
给你n行m列的矩阵,同时有p个障碍,输出不包括障碍的最大矩形
输入格式
第一行包含三个整数 R,C,P。接下来 P 行,每行包含两个整数 r,c,表示第 r 行第 c 列的方格是障碍
输出格式
输出牛棚的最大可能面积。
数据范围
1≤R,C≤3000,
0≤P≤30000,
1≤r≤R,
1≤c≤C
输入样例:
3 4 2
1 3
2 1
输出样例:
6
思路
单调栈模板提,先统计每一行每一列其上方最大的方格数量,再对每一行进行单调栈运算得出该行所能得到的最大矩形,再和ans进行比较,最后得出答案
代码
#include<bits/stdc++.h>
#define endl "\n"
#define pb push_back
#define ALL(x) x.begin(),x.end()
using namespace std;
typedef long long ll;
typedef pair<ll,ll> pll;
typedef pair<int,int> pii;
const int inf