제출 #915518

#제출 시각아이디문제언어결과실행 시간메모리
915518vjudge1Bomb (IZhO17_bomb)C++17
24 / 100
169 ms10064 KiB
/*#pragma GCC optimize ("Ofast")
#pragma GCC optimize ("unroll-loops")
#pragma GCC target("avx,avx2,fma")*/
#include <bits/stdc++.h>
using namespace std;
#define ll long long int
ll n,m,k,cnt;
void anomalous_solve()
{
	cin>>n>>m;
	char a[n+1][m+1];
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=m;j++)
		{
			cin>>a[i][j];
		}
	}
	ll mx1=1e9,mx2=1e9;
	cnt=0;
	for(int i=1;i<=n;i++)
	{
		cnt=0;
		for(int j=1;j<=m;j++)
		{
			if(a[i][j]=='1')cnt++;
			else if(cnt>0)
			{
				mx2=min(mx2,cnt);
				cnt=0;
			}
		}
		if(cnt>0)
		{
			mx2=min(mx2,cnt);
		}
	}
	for(int j=1;j<=m;j++)
	{
		cnt=0;
		for(int i=1;i<=n;i++)
		{
			if(a[i][j]=='1')cnt++;
			else if(cnt>0)
			{
				mx1=min(mx1,cnt);
				cnt=0;
			}
		}
		if(cnt>0)
		{
			mx1=min(mx1,cnt);
		}
	}
	//cout<<mx1<<" "<<mx2<<"\n";
	ll ans=0;
	for(int i=1;i<=mx1;i++)
	{
		for(int j=1;j<=mx2;j++)
		{
			ans=max(ans,mx1*mx2);
		}
	}
	cout<<ans;
}
int main()
{
	//freopen("INPUT.txt","r",stdin);
	//freopen("OUTPUT.txt","w",stdout);

	ios_base::sync_with_stdio();
    cin.tie(NULL);
    cout.tie(NULL);

    ll test=1;
	//cin>>test;
    for(int pos=1;pos<=test;pos++)
    	anomalous_solve();
}
#Verdict Execution timeMemoryGrader output
Fetching results...