首页 > TAG信息列表 > P4147

洛谷P4147 玉蟾宫 (单调栈)

要求我们去找一个最大矩形面积。 单调栈做法(和P1950 长方形那道题类似(一模一样))。 1 #include<bits/stdc++.h> 2 using namespace std; 3 char M[1010][1010]; 4 int n,m,h[1010],l[1010],r[1010]; 5 int s[1010],top; 6 7 void ddzl(){ 8 top=0; 9 for(int i=m

做题记录 Luogu P4147

P4147 玉蟾宫 悬线法预处理 dp。 神级实现。 #include<bits/stdc++.h> using namespace std; #define int long long #define N 1005 char s[3]; int n, m, a[N], l[N], r[N]; signed main() { int ans = 0; scanf("%lld%lld", &n, &m); for(int i = 1; i <= n

洛谷P4147 玉蟾宫

题面 传送门 给定一个\(n*m\)的\(0/1\)矩阵,求最大子矩阵:满足矩阵内所有元素均为\(1\). 输出矩阵大小\(*3\) 分析 悬线法,最大子矩阵板子题 (也可以单调栈和并查集,但是窝不会) 维护三个值\(l[i][j]\)和\(r[i][j],up[i][j]\),分别代表当前点\((i,j)\)向左最长的延伸到的点位置,向右最长的

P4147 玉蟾宫(【模板】悬线法)

题目地址 注意点: if(canGet[x][y-1])l[x][y]=max(l[x][y],l[x][y-1]); if(canGet[x][y-1])r[x][y]=min(r[x][y],r[x][y-1]); #include<cstdio>#include<iostream>using namespace std;const int MAXN=2e3,INF=2e9;bool canGet[MAXN][MAXN];//可获取int l[MAXN][MAXN],

洛谷 P4147 玉蟾宫

洛谷 P4147 玉蟾宫 Description 这片土地被分成N*M个格子,每个格子里写着'R'或者'F',R代表这块土地被赐予了rainbow,F代表这块土地被赐予了freda。 现在freda要在这里卖萌。。。它要找一块矩形土地,要求这片土地都标着'F'并且面积最大。 但是rainbow和freda的OI水平都弱爆了,找不出这