被输入坑了233333

另外感觉我这方法好像不太对的样子。。but找不到数据算了ac了==

 1 #include<stdio.h>
 2 #include<string.h>
 3 #include<algorithm>
 4 using namespace std;
 5 int up[1005][1005],down[1005][1005],l1[1005][1005],r1[1005][1005],l2[1005][1005],r2[1005][1005];
 6 char s[1005][1005],ss[1005];
 7 int main()
 8 {
 9     int T,n,m,i,j,maxx,x;
10     scanf("%d",&T);
11     while (T--)
12     {
13         scanf("%d%d",&m,&n);
14         getchar();
15         for (i=1;i<=m;i++)
16             for (j=1;j<=n;j++){
17                 scanf("%s",&ss);
18                 s[i][j]=ss[0];
19             }
20         maxx=0;
21         memset(up,0,sizeof(up));
22         memset(down,0,sizeof(down));
23         for (i=1;i<=m;i++)
24             for (j=1;j<=n;j++)
25             if (s[i][j]=='F') up[i][j]=up[i-1][j]+1;
26         for (i=m;i>=1;i--)
27             for (j=1;j<=n;j++)
28             if (s[i][j]=='F') down[i][j]=down[i+1][j]+1;
29
30         for (i=1;i<=m;i++)
31         {
32             l1[i][1]=1;  r1[i][n]=n;
33             for (j=2;j<=n;j++)
34             {
35                 x=j;
36                 while (x>1&&up[i][x-1]>=up[i][j]) x=l1[i][x-1];
37                 l1[i][j]=x;
38             }
39             for (j=n-1;j>=1;j--)
40             {
41                 x=j;
42                 while (x<n&&up[i][x+1]>=up[i][j]) x=r1[i][x+1];
43                 r1[i][j]=x;
44             }
45
46             l2[i][1]=1;  r2[i][n]=n;
47             for (j=2;j<=n;j++)
48             {
49                 x=j;
50                 while (x>1&&down[i][x-1]>=down[i][j]) x=l2[i][x-1];
51                 l2[i][j]=x;
52             }
53             for (j=n-1;j>=1;j--)
54             {
55                 x=j;
56                 while (x<n&&down[i][x+1]>=down[i][j]) x=r2[i][x+1];
57                 r2[i][j]=x;
58             }
59             for (j=1;j<=n;j++)
60             {
61                 x=(up[i][j]+down[i][j]-1)*(min(r1[i][j],r2[i][j])-max(l1[i][j],l2[i][j])+1);
62                 if (x>maxx) maxx=x;
63             }
64         }
65         printf("%d\n",maxx*3);
66     }
67 }

View Code

转载于:https://www.cnblogs.com/xiao-xin/articles/4066132.html

hdu1505 dp:01矩形中最大面积全0矩阵相关推荐

  1. TensorFlow 构造对角线为1的其余全0矩阵

    import tensorflow as tfbatch_size = 4a = tf.one_hot(tf.range(batch_size), batch_size)sess = tf.Sessi ...

  2. matlab 全1矩阵,matlab全为1的矩阵

    生成一个 m 行 n 列的零矩阵,m=n 时可简写为 zeros(n) 生成一个 m 行 n 列的元素全为 1 的矩阵, m=n 时可写为 ones(n) 生成一个主对角线全为 1 的 m 行 n 列 ...

  3. 编写一个抽象类Shape,声明计算图形面积的抽象方法。再分别定义Shape的子类Circle(圆)和Rectangle(矩形),在两个子类中按照不同图形的面积计算公式,实现Shape类中计算面积的方法

    编写一个抽象类Shape,声明计算图形面积的抽象方法.再分别定义Shape的子类Circle(圆)和Rectangle(矩形),在两个子类中按照不同图形的面积计算公式,实现Shape类中计算面积的方法 ...

  4. 求四边形最大内接矩形_三角形内接矩形的最大面积问题

    龙源期刊网 http://www.qikan.com.cn 三角形内接矩形的最大面积问题 作者:李云虎 来源:<中学教学参考 · 理科版> 2013 年第 01 期 [问题]美佳玩具厂生产 ...

  5. 【宫水三叶的刷题日记】497. 非重叠矩形中的随机点(中等)

    题目描述 这是 LeetCode 上的 497. 非重叠矩形中的随机点 ,难度为 中等. Tag : 「前缀和」.「二分」.「随机化」 给定一个由非重叠的轴对齐矩形的数组 rects,其中 表示 是第 ...

  6. 数位DP 不断学习中。。。。

    1, HDU 2089  不要62 :http://acm.hdu.edu.cn/showproblem.php?pid=2089 题意:不能出现4,或者相邻的62, dp[i][0],表示不存在不吉 ...

  7. 半圆阴影_圆中阴影部分面积求法的常用方法

    圆中阴影部分面积求法的常用方法 一.利用规则图形的和差求面积: 例题1.如图.在边长为 4 的正方形ABCD中,先以点 A 为圆心,AD 的长为半径画弧,在以 AB 的中点为圆心,AB 长的一半为半径 ...

  8. 动态规划套路在最长公共子串、最长公共子序列和01背包问题中的应用

    2019独角兽企业重金招聘Python工程师标准>>> 适合动态规划(DP,dynamic programming)方法的最优化问题有两个要素:最优子结构和重叠子问题. 最优子结构指 ...

  9. java继承类长方形面积_java_java用接口、多态、继承、类计算三角形和矩形周长及面积的方法,本文实例讲述了java用接口、多 - phpStudy...

    java用接口.多态.继承.类计算三角形和矩形周长及面积的方法 本文实例讲述了java用接口.多态.继承.类计算三角形和矩形周长及面积的方法.分享给大家供大家参考.具体如下: 定义接口规范: /** ...

  10. HDU 1864 最大报销额 (dp 01背包)

    最大报销额 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Subm ...

最新文章

  1. 端口聚合与Trunk综合配置
  2. python3多进程 pool manager_Python多进程multiprocessing.Pool
  3. 移除指定 global using 命名空间
  4. 专家:人工智能开始对现实世界产生重大影响​​
  5. mysql vs2008,vs2008 使用mysql
  6. ubuntu18.04安装unity tweak tool
  7. android:windowSoftInputMode属性使用
  8. 全景探秘游戏设计艺术(1):游戏设计师
  9. 数据结构系列,二叉平衡树的构建
  10. javascript案例32——中文简繁体转换
  11. linux表示一序列ip,linux 下查看硬件信息(mac,IP地址,硬盘型号,序列号等)
  12. 自定义/修改微信二维码样式
  13. 【Java学习笔记1】Java概述 -背景+环境搭建
  14. c语言读取无压缩的cbl的源代码,c语言基础算法案例
  15. PyTorch深度学习基础之Reduction归约和自动微分操作讲解及实战(附源码 超详细必看)
  16. SQUIRREL语言
  17. 物联网技术融合成为新趋势,LPWAN2.0泛在物联·ZETA生态大会在深圳召开
  18. gstreamer AV sync
  19. 更换网站字体详细教程附字体包
  20. ActivePerl无法打开安装包

热门文章

  1. 智能优化算法:纵横交叉算法-附代码
  2. 高密度椒盐噪声的多方向加权均值滤波算法-附代码
  3. 【Tensorflow】tensorboard小结
  4. (转载)形态学腐蚀、膨胀——Matlab DIP(瓦)ch9形态学图像处理
  5. ENVI实验教程(4)实验四、遥感图像预处理—融合、镶嵌、裁剪
  6. JS学习总结(14)——Events事件
  7. ARCGIS操作教程学习
  8. 光学定位与追踪技术_从显微镜到显纳镜:小于2nm定位精度光学显微镜
  9. 使用ubuntu18搭建nfs分布式文件系统
  10. kubernetes集群Pod详细信息为Failed create pod sandbox,缺失镜像google_containers/pause-amd64.3.0解决方法