标签:task from ios style length inpu UI blank --
#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<queue> using namespace std; int l[1005],r[1005],a[1005][1005]; int main() { int T; scanf("%d",&T); while(T--) { int m,n; char s[15]; scanf("%d%d",&m,&n); for(int i=1;i<=m;i++) for(int j=1;j<=n;j++) { scanf("%s",s); a[i][j]=(s[0]==‘R‘?0:1); } for(int i=2;i<=m;i++) for(int j=1;j<=n;j++) if(a[i][j]==1) a[i][j]+=a[i-1][j]; int ans=0; for(int i=1;i<=m;i++) { for(int j=1;j<=n;j++)l[j]=j,r[j]=j; for(int j=2;j<=n;j++) { if(a[i][j]<=a[i][j-1]&&a[i][j]!=0) { l[j]=l[j-1]; int k=j-1; while(a[i][l[k]-1]>=a[i][j]&&k>1)k=l[k]-1; l[j]=l[k]; } } for(int j=n-1;j>=1;j--) { if(a[i][j]<=a[i][j+1]&&a[i][j]!=0) { r[j]=r[j+1]; int k=j+1; while(a[i][r[k]+1]>=a[i][j]&&k<n)k=r[k]+1; r[j]=r[k]; } } for(int j=1;j<=n;j++) ans=max(ans,(r[j]-l[j]+1)*a[i][j]*3); } printf("%d\n",ans); } return 0; }
标签:task from ios style length inpu UI blank --
原文地址:http://www.cnblogs.com/homura/p/6709304.html