题目

传送门:QWQ

分析

以前见到过差不多的这题。

xhk说是单调栈水题,但我又不会单调栈,于是当时就放下了。

这么久过去了我还是不会用单调栈做这题,用的是悬线法。

非常好写

代码

#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
const int maxn=;
int up[maxn][maxn], left[maxn][maxn], right[maxn][maxn], A[maxn][maxn];
int main(){
int T; scanf("%d",&T);
while(T--){
memset(up,,sizeof(up));memset(left,,sizeof(left));memset(right,,sizeof(right));memset(A,,sizeof(A));
int n,m;
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)
for(int j=;j<=m;j++){
char s[]; scanf("%s",s);
if(s[]=='F') A[i][j]=;
}
int ans=;
for(int i=;i<=n;i++){
int lo=, ro=m+;
left[i][]=; right[i][m]=m;
for(int j=;j<=m;j++)
if(!A[i][j]){up[i][j]=left[i][j]=;lo=j;}
else{
up[i][j]=up[i-][j]+; if(i==) left[i][j]=lo+; else left[i][j]=max(left[i-][j],lo+);
}
for(int j=m;j>=;j--)
if(!A[i][j]) ro=j,right[i][j]=m;
else{
if(i==) right[i][j]=ro-; else right[i][j]=min(right[i-][j],ro-);
ans=max(ans,up[i][j]*(right[i][j]-left[i][j]+));
// if(ans==up[i][j]*(right[i][j]-left[i][j]+1)) printf("----- %d %d %d %d %d\n",i,j,up[i][j],left[i][j],right[i][j]);
}
}
printf("%d\n",ans*);
}
return ;
}
/*
2
5 6
R F F F F F
F F F F F F
R R R F F F
F F F F F F
F F F F F F
5 5
R R R R R
R R R R R
R R R R R
R R R R R
R R R R R
2
5 6
R F F F F F
F F F F R F
R R R F F F
F F F F R F
F F F F F F
5 5
R R R R R
R F R R R
R R R F R
R R R R R
R F R R R
*/

【UVALive】3029 City Game(悬线法)的更多相关文章

  1. [POJ1964]City Game (悬线法)

    题意 其实就是BZOJ3039 不过没权限号(粗鄙之语) 同时也是洛谷4147 就是求最大子矩阵然后*3 思路 悬线法 有个博客讲的不错https://blog.csdn.net/u012288458 ...

  2. HDU1505 City Game 悬线法

    题意: 给出一个像这样的矩阵 R F F F F F F F F F F F R R R F F F     F F F F F F F F F F F F 求F组成的最大子矩阵(面积最大) 有多组数 ...

  3. City Game UVALive - 3029(悬线法求最大子矩阵)

    题意:多组数据(国外题好像都这样),每次n*m矩形,F表示空地,R表示障碍 求最大子矩阵(悬线法模板) 把每个格子向上延伸的空格看做一条悬线 以le[i][j],re[i][j],up[i][j]分别 ...

  4. 【BZOJ-1127】KUP 悬线法 + 贪心

    1127: [POI2008]KUP Time Limit: 10 Sec  Memory Limit: 162 MBSec  Special JudgeSubmit: 317  Solved: 11 ...

  5. 【BZOJ-3039&1057】玉蟾宫&棋盘制作 悬线法

    3039: 玉蟾宫 Time Limit: 2 Sec  Memory Limit: 128 MBSubmit: 753  Solved: 444[Submit][Status][Discuss] D ...

  6. BZOJ_3039_玉蟾宫_(动态规划+悬线法)

    描述 http://www.lydsy.com/JudgeOnline/problem.php?id=3039 n*m的矩阵由R和F组成,求全是F的子矩阵的大小的三倍. 分析 悬线法: 浅谈用极大化思 ...

  7. BZOJ 1057: [ZJOI2007]棋盘制作( dp + 悬线法 )

    对于第一问, 简单的dp. f(i, j)表示以(i, j)为左上角的最大正方形, f(i, j) = min( f(i + 1, j), f(i, j + 1), f(i + 1, j + 1)) ...

  8. BZOJ 3039: 玉蟾宫( 悬线法 )

    最大子矩阵...悬线法..时间复杂度O(nm) 悬线法就是记录一个H向上延伸的最大长度(悬线), L, R向左向右延伸的最大长度, 然后通过递推来得到. ----------------------- ...

  9. [P1169] 棋盘制作 &悬线法学习笔记

    学习笔记 悬线法 最大子矩阵问题: 在一个给定的矩形中有一些障碍点,找出内部不包含障碍点的,边与整个矩形平行或重合的最大子矩形. 极大子矩型:无法再向外拓展的有效子矩形 最大子矩型:最大的一个有效子矩 ...

随机推荐

  1. Win10启动盘制作工具

    Rufus https://rufus.akeo.ie/ http://www.iplaysoft.com/windows-10-udisk-install.html

  2. 浅谈js异步

    大家都知道,js是一个单线程的语言(只有一个线程来执行js函数),所以如果某一个函数执行任务耗时比较长的话,就会造成阻塞,使得后续任务一直处于等待状态. 一.阻塞示例 function f1(){ ; ...

  3. keras 报错 ValueError: Tensor conversion requested dtype int32 for Tensor with dtype float32: 'Tensor("embedding_1/random_uniform:0", shape=(5001, 128), dtype=float32)'

    在服务器上训练并保存模型,复制到本地之后load_model()报错: ValueError: Tensor conversion requested dtype int32 for Tensor w ...

  4. yum安装php5.5,php5.6和php7.0

    本文主要介绍在CentOS系统下的php多个版本的安装使用 1.清理系统上的旧版本php 1)查询已安装的php软件 rpm -qa|grep php* yum list installed | gr ...

  5. [sklearn]性能度量之AUC值(from sklearn.metrics import roc_auc_curve)

    原创博文,转载请注明出处! 1.AUC AUC(Area Under ROC Curve),即ROC曲线下面积. 2.AUC意义 若学习器A的ROC曲线被学习器B的ROC曲线包围,则学习器B的性能优于 ...

  6. WIN7下配置和使用解压缩版MYSQL

    最近mysql出了新的GA版本——mysql5.6.11,此版本windows64位下只有解压缩版,于是在win7上进行了配置.期间碰到了一些问题,在此记录一下. 一.环境 操作系统:WIN764位 ...

  7. Maven系列(二)之安装和配置详解

    检查JDK环境 在安装Maven之前,首先要确认你已经正确安装了JDK.Maven可以运行在JDK 1.4及以上的版本上. 打开cmd输入: java -version 下载Maven Maven官网 ...

  8. A Corrupt Mayor's Performance Art

    Corrupt governors always find ways to get dirty money. Paint something, then sell the worthless pain ...

  9. 使用service&scope 进行注入

    @service 声明该类为一个bean,bean的名称为类名首字母小写(customerService) @Scope("prototype")则声明为一个原子类型,既每个get ...

  10. Nchan 安装试用(openresty 同时支持)

    备注:        使用nginx最新的源码包(nginx-1.13.6),以及源码安装   1. 下载源码包(nginx+ Nchan) https://nginx.org/download/ng ...