zoukankan      html  css  js  c++  java
  • codeforces 375B Maximum Submatrix 2

    题意:给你一个矩阵,问你只变动行,能到到最大面积的全为‘1’ 的矩阵。

    解题思路:先一行一行的求出到了这一列最长连续的1有多少,然后一列一列先hash 然后求 最大值 ,发现%1d好慢。

    解题代码:

     1 // File Name: 375b.cpp
     2 // Author: darkdream
     3 // Created Time: 2015年03月09日 星期一 21时05分00秒
     4 
     5 #include<vector>
     6 #include<list>
     7 #include<map>
     8 #include<set>
     9 #include<deque>
    10 #include<stack>
    11 #include<bitset>
    12 #include<algorithm>
    13 #include<functional>
    14 #include<numeric>
    15 #include<utility>
    16 #include<sstream>
    17 #include<iostream>
    18 #include<iomanip>
    19 #include<cstdio>
    20 #include<cmath>
    21 #include<cstdlib>
    22 #include<cstring>
    23 #include<ctime>
    24 #define LL long long
    25 #define maxn 5005
    26 using namespace std;
    27 int dp[maxn][maxn];
    28 int hs[maxn];
    29 int main(){   
    30     int n , m; 
    31     scanf("%d %d",&n,&m);
    32     getchar();
    33     for(int i = 1;i <= n;i ++)
    34     {
    35        int sum = 0 ;
    36        char tmp ; 
    37        for(int j = 1;j <= m ;j++  )
    38        {
    39            tmp = getchar();
    40            if(tmp == '1' )
    41                sum ++ ; 
    42            else sum = 0; 
    43            dp[i][j] = sum ;
    44        }
    45        getchar();
    46     }
    47     int mx = 0 ; 
    48     for(int i = 1;i <= m;i ++)
    49     {
    50       memset(hs,0,sizeof(hs));
    51       for(int j= 1;j <= n;j ++)
    52       {
    53         hs[dp[j][i]] ++;
    54       }
    55       int tsum = 0 ; 
    56       for(int j = 0;j<= m;j ++)
    57       {
    58          if(hs[j])
    59          {
    60            mx = max((n - tsum ) * j ,mx);
    61            tsum += hs[j];
    62          }
    63       }
    64     }
    65     printf("%d
    ",mx);
    66         
    67 return 0;
    68 }
    View Code
    没有梦想,何谈远方
  • 相关阅读:
    一个可以用的Lua的Class函数
    写一个可以用的Lua打印Table的函数
    关于C#的接口的碎碎念
    C#中接口是值类型还是引用类型?
    Effective C++笔记_条款31将文件间的编译依存关系降至最低
    Effective C++ 阅读笔记_条款27 尽量少做转型动作
    Flask--开发全套
    python之元类
    Django之模板层
    go打开文件
  • 原文地址:https://www.cnblogs.com/zyue/p/4324564.html
Copyright © 2011-2022 走看看