Matrix Swapping II

来源:互联网 发布:画江湖之不良人 知乎 编辑:程序博客网 时间:2024/04/29 09:07


http://acm.hdu.edu.cn/showproblem.php?pid=2830

#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
int cmp(int a,int b)
{
    return a>b;
}
int main()
{
 int n,m,i,j,k,t,ans,num[1010],row[1010];
 char ch;
 while(scanf("%d%d",&n,&m)!=EOF)
 {
  getchar();
  ans=0;
  memset(num,0,sizeof(num));
  for(i=1;i<=n;i++)
  {
   for(j=1;j<=m;j++)
   {
    scanf("%c",&ch);
    if(ch=='1')
     num[j]++;
    else
     num[j]=0;
    row[j]=num[j];
   }
   sort(row+1,row+m+1,cmp);
   for(j=1;j<=m;j++)
    if(ans<row[j]*j)
     ans=row[j]*j;
   getchar();
  }
  printf("%d\n",ans);
 }
 return 0;
}

0 0