제출 #1351069

#제출 시각아이디문제언어결과실행 시간메모리
1351069BigBadBullyBomb (IZhO17_bomb)C++20
24 / 100
18 ms7144 KiB
#include <bits/stdc++.h>

#define int long long
#define pii pair<int,int>
#define ff first
#define ss second
const int inf = 4e18;
const int mod = 1e9+7;
using namespace std;

int exp(int x,int a)
{
    int res = 1;
    for(;a>0;res=(a%2?res*x%mod:res),x=x*x%mod,a/=2);
    return res;
}

int inv(int x)
{
    return exp(x,mod-2);
}

void solve()
{
    int n,m;
    cin >> n >> m;
    vector<string> g(n);
    for(auto&s:g)cin>>s;
    int ans = 1;
    int  mini = m;
    for(int i = 0; i < n; i++)
    {
        int prev = 0; 
        for(int j = 0;j < m; j++)
            if(j>0&&g[i][j]!=g[i][j-1])
            {
                if(g[i][j]=='0')
                    mini = min(mini,j-prev);
                prev = j;
            }
        if(g[i][m-1]=='1')
        mini = min(mini,m-prev);
        
    }
    ans*=mini;
    mini = n;
    for(int j = 0;j < m;j++)
    {
        int prev = 0;
        for(int i = 0; i < n; i++)
            if(i>0&&g[i][j]!=g[i-1][j])
            {
                if(g[i][j]=='0')
                    mini = min(mini,i-prev);
                prev = i;
            }
        if(g[n-1][j]=='1')
        mini = min(mini,n-prev);
       
    }
    cout<<ans*mini<<'\n';
}

signed main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int t = 1;
    //cin >> t;
    while(t--)
    solve();
}
#Verdict Execution timeMemoryGrader output
Fetching results...