博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
洛谷4147玉蟾宫
阅读量:4469 次
发布时间:2019-06-08

本文共 1048 字,大约阅读时间需要 3 分钟。

题目:

悬线法裸题。

注意那个更新r的时候;r的意义是高为当前悬线的那一条最右能扩展到哪,故当与上一行无关时就不应受它的影响了;

l 因为是取Max,所以没有上述顾虑,即不合法的上一行只会是 ‘R’ ,而它的值是0,所以取Max的时候不会受无关状态的影响。

#include
#include
#include
using namespace std;const int N=1005;int n,m,u[N][N],l[N][N],r[N][N],ans;char cch[N];int main(){ scanf("%d%d",&n,&m); memset(r[0],1,sizeof r[0]); char ch; for(int i=1;i<=n;i++) { int k=1; for(int j=1;j<=m;j++) { scanf(" %c",&cch[j]); if(cch[j]=='F') { u[i][j]=u[i-1][j]+1; l[i][j]=max(l[i-1][j],k); } else k=j+1; } k=m; for(int j=m;j;j--) { if(cch[j]=='F')r[i][j]=(u[i][j]>1)?min(r[i-1][j],k):k;// else k=j-1; ans=max(ans,(r[i][j]-l[i][j]+1)*u[i][j]); }// for(int j=1;j<=m;j++)// printf("j=%d u=%d l=%d r=%d\n",j,u[i][j],l[i][j],r[i][j]); } printf("%d",ans*3); return 0;}

 

转载于:https://www.cnblogs.com/Narh/p/8765368.html

你可能感兴趣的文章
hash文件-对文件进行数字签名
查看>>
TCP_Wrappers基础知识介绍
查看>>
Central Post Office (Shiraz University Local Contest 2011 ) 树状dp
查看>>
51Nod - 1031 骨牌覆盖
查看>>
回顾环信使用
查看>>
JavaScript--函数对象的属性caller与callee
查看>>
特殊字符大全
查看>>
SQL - SQL 连接 JOIN 例解。(左连接,右连接,全连接,内连接,交叉连接,自连接)[转]...
查看>>
《learning hard C#学习笔记》读书笔记(20)异步编程
查看>>
动态创建Struct实例
查看>>
Jsp通过JDBC连接到SQL Server2008数据库遇到的几个问题
查看>>
idea 不能编译生成class文件
查看>>
javascript原生百叶窗
查看>>
单播组播和广播
查看>>
JSPatch - iOS 动态补丁
查看>>
eclipse设置和优化
查看>>
WinFrom玩转config配置文件
查看>>
IIS服务中五种身份验证
查看>>
c#网络编程-第一章
查看>>
paip.提升效率--僵尸代码的迷思
查看>>