记录编号 |
248715 |
评测结果 |
AAAAAAAAAAAAA |
题目名称 |
[USACO Jan16]哞哞城堡 |
最终得分 |
100 |
用户昵称 |
Fancy |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.238 s |
提交时间 |
2016-04-10 23:03:29 |
内存使用 |
0.60 MiB |
显示代码纯文本
#include<cstdio>
const int N=202;
int n,m,ans,you[N][N],xia[N][N];
char s[N];
inline int max(int x,int y) { return x>y?x:y; }
int main()
{
freopen("fortmoo.in","r",stdin);
freopen("fortmoo.out","w",stdout);
scanf("%d%d",&n,&m);
for(int i=1,k;i<=n;i++)
{
scanf("%s",s+1);
for(int j=1;j<=m;j++)
if(s[j]=='.')
{
you[i][j]=j;k=j-1;
while(k&&you[i][k]==j-1) you[i][k--]=j;
xia[i][j]=i;k=i-1;
while(k&&xia[k][j]==i-1) xia[k--][j]=i;
}
}
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
for(int k=i;k<=xia[i][j];k++)
for(int t=you[i][j];t>=j;t--)
if(t<=you[k][j]&&k<=xia[i][t])
{ans=max(ans,(k-i+1)*(t-j+1));break;}
printf("%d\n",ans);
}