昨天打 CF又跪了。近期睡不好睡不好睡不好~感觉整个人都累傻了,根本无办法写下去,只写了一题签到题就跪了orz..从未试过这么悲剧。

今天早上凭着我的意念(“怨念”)。七点又起来了!

我已经连续好多天七点自己主动起来(不是自然醒。是意念,是意念....),刷啊刷啊刷dp.

今天刷的是昨天的加强版。实际上就多了一个for循环。和做高度处理,不直到是不是正解(  ╮(╯▽╰)╭ ),可是AC就好了...

经过多次调试我的shell脚本,这个acm.sh算是比較稳定了,还差一个自己主动提交机啊!

我的肉不够多啊,人肉提交非常累。

看到我的開始时间是07:41:44,由于我改了一下我的脚本,大概就是自己主动在hdu或者poj扒下測试数据。生成了文件in.txt,out.txt。以及自己主动生成带有ifndef什么的。

改.vimrc改到有小小感觉了。等我的机器人自己主动提交,我就能够共享到github,再写一篇关于我的acm.sh~不知道大家刷ACM的时候是不是特别蛋疼做非常多无谓的工作~(比方每次拍数据!

),我把我能想到能够机器人弄的都弄上去, O(∩_∩)O哈哈~

好吧。讲回题目。题目意思就是在一个方阵上找到最大的子矩阵,即所有标记为F的最大子矩阵。之后输出子矩阵F的个数*3.

思路就是,对每行构造高度矩阵(我是自顶向下的,比方 (R F F ;R F R)。这样做到的矩阵为(0,2,1;0,1,0),有了高度,对每行做昨天的1506,then output!

/***********************************************************
> OS : Linux 3.2.0-60-generic #91-Ubuntu
> Author : yaolong
> Mail : dengyaolong@yeah.net
> Time : 2014年06月02日 星期一 07:41:44
**********************************************************/
#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
using namespace std;
int h[1005][1005];
char mp[1005][1005];
int lt[1005],rt[1005];
int main(){
#ifndef ONLINE_JUDGE
freopen("in.txt","r",stdin);
#endif int T,n,m;
scanf(" %d",&T);
while(T--){
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++){
scanf(" %c",&mp[i][j]);
}
}
for(int j=1;j<=m;j++){
h[0][j]=0;
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
if(mp[i][j]=='R'){
h[i][j]=0;
}else{
h[i][j]=h[i-1][j]+1;
}
}
}
/*
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
printf("%d",h[i][j]);
}
puts("");
}*/
int mmax=0,t;
for(int i=1;i<=n;i++){
lt[1]=1;rt[m]=m;
for(int j=2;j<=m;j++){
t=j;
while(t>1&&h[i][j]<=h[i][t-1]) t=lt[t-1];
lt[j]=t;
}
for(int j=m-1;j>=1;j--){
t=j;
while(t<m&&h[i][j]<=h[i][t+1]) t=rt[t+1];
rt[j]=t;
}
for(int j=1;j<=m;j++){
mmax=max(mmax,h[i][j]*(rt[j]-lt[j]+1));
}
}
printf("%d\n",mmax*3); } #ifndef ONLINE_JUDGE
fclose(stdin);
#endif
return 0;
}

HDU1505(HDU1506的加强版)的更多相关文章

  1. HDU_1505_矩阵中的最大矩形_dp

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1505 City Game Time Limit: 2000/1000 MS (Java/Others) ...

  2. hdu 1505 City Game (hdu1506加强版)

    # include <stdio.h> # include <algorithm> # include <string.h> # include <iostr ...

  3. HDU 1505 City Game (hdu1506 dp二维加强版)

    F - City Game Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submi ...

  4. 【BZOJ-3514】Codechef MARCH14 GERALD07加强版 LinkCutTree + 主席树

    3514: Codechef MARCH14 GERALD07加强版 Time Limit: 60 Sec  Memory Limit: 256 MBSubmit: 1288  Solved: 490 ...

  5. 斐波拉契数列加强版——时间复杂度O(1),空间复杂度O(1)

    对于斐波拉契经典问题,我们都非常熟悉,通过递推公式F(n) = F(n - ) + F(n - ),我们可以在线性时间内求出第n项F(n),现在考虑斐波拉契的加强版,我们要求的项数n的范围为int范围 ...

  6. vijos P1915 解方程 加强版

    背景 B酱为NOIP 2014出了一道有趣的题目, 可是在NOIP现场, B酱发现数据规模给错了, 他很伤心, 哭得很可怜..... 为了安慰可怜的B酱, vijos刻意挂出来了真实的题目! 描述 已 ...

  7. [NOIP2014] 解方程&加强版 (bzoj3751 & vijos1915)

    大概有$O(m)$,$O(n\sqrt{nm})$,$O(n\sqrt{m})$的3个算法,其中后2个可以过加强版.代码是算法3,注意bzoj的数据卡掉了小于20000的质数. #include< ...

  8. HTML5音乐播放器(最新升级改造加强版)

    最近么,单位里面么老不顺心的,公司一直催要程序员要PHP,然后本宅好不容易推荐了一个,我日嘞,最后待遇变成1.3,吾师最后也同意1.3W,然后还说要考虑... 尼玛,4年多5年不到一点的工作经验,前端 ...

  9. 【转】PowerShell入门(二):PowerShell是Cmd命令行的加强版吗?

    转至:http://www.cnblogs.com/ceachy/archive/2013/01/31/PowerShell_vs_Cmd.html PowerShell是命令行的加强版吗?Power ...

随机推荐

  1. 数据结构与算法之--高级排序:shell排序和快速排序

    高级排序比简单排序要快的多,简单排序的时间复杂度是O(N^2),希尔(shell)排序大约是O(N*(logN)^2),而快速排序是O(N*logN). 说明:下面以int数组的从小到大排序为例. 希 ...

  2. JAVA版数据库主键ID生成器

    import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; public clas ...

  3. asp.net webform 打造私人后台管理系统(附源码)

    系统简介 git地址:https://github.com/qingfengjun/XSSystem 不少人让我做公司的网站,要求不多,但是需要有一个后台系统,所以就有了开发的动力.也想做个系统自己学 ...

  4. JavaScript备忘录-闭包(2)

    闭包的定义 闭包是指函数有自由独立的变量.换句话说,定义在闭包中的函数可以“记忆”它创建时候的环境. 闭包的浅显理解 function makeFunc() { var name = "Mo ...

  5. YumRepo Error: All mirror URLs are not using

    yum 安装软件出错,最后发现是网络被拦截导致.

  6. 转:fortios 5.4后门植入

    提示: 1.经过实验,fortios 5.4 beta4也是可以的. 2.在实验时,选择先下载fortios 5.2(做了快照),再升级5.4,则虚拟机挂载需要选择FortiGate-VM-disk1 ...

  7. 洛谷——P1626 象棋比赛

    P1626 象棋比赛 题目描述 有N个人要参加国际象棋比赛,该比赛要进行K场对弈.每个人最多参加两场对弈,最少参加零场对弈.每个人都有一个与其他人不相同的等级(用一个正整数来表示). 在对弈中,等级高 ...

  8. Flask实战第41天:发送短信验证码

    本项目使用的短信运营商是阿里云.使用淘宝账号登录阿里云控制台.在“产品与服务”中搜索“短信”进入短信服务 获取AccessKey 输入子账户用户名 权限选择管理短信服务 签名管理:申请签名 模板管理: ...

  9. 【UOJ #131】【NOI 2015】品酒大会

    http://uoj.ac/problem/131 求出后缀数组和height数组后,从大到小扫相似度进行合并,每次相当于合并两个紧挨着的区间. 合并区间可以用并查集来实现,每个区间的信息都记录在这个 ...

  10. [BZOJ1305][CQOI2009]跳舞(网络流)

    1305: [CQOI2009]dance跳舞 Time Limit: 5 Sec  Memory Limit: 162 MBSubmit: 3944  Solved: 1692[Submit][St ...