Submission #833527

#TimeUsernameProblemLanguageResultExecution timeMemory
833527vjudge1Bomb (IZhO17_bomb)C++17
24 / 100
39 ms16092 KiB
#include<bits/stdc++.h> using namespace std; #define IOS ios_base::sync_with_stdio(0); cin.tie(0); #define int long long #define pb push_back #define fi first #define se second #define mp make_pair const int mod = 1e9 + 7; const int maxn = 2505; int n, m; char grid[maxn][maxn]; void solve(){ if(n == 1 || m == 1){ if(n == 1){ //vector<int> cnt; int i = 1; int mini = LLONG_MAX; for(; i <= m; i++){ int tmp; if(grid[1][i] == '1'){ tmp = 1; while(grid[1][i + 1] == '1'){ tmp++; i++; } }else{ continue; } //cnt.pb(tmp); mini = min(mini, tmp); } cout << mini << endl; }else{ int i = 1; int mini = LLONG_MAX; for(; i <= n; i++){ int tmp; if(grid[i][1] == '1'){ tmp = 1; while(grid[i + 1][1] == '1'){ tmp++; i++; } }else{ continue; } //cnt.pb(tmp); mini = min(mini, tmp); } cout << mini << endl; } return; }else{ //cek tiap baris int minsbaris = LLONG_MAX; for(int i = 1; i <= n; i++){ int j = 1; int mini = LLONG_MAX; for(; j <= m; j++){ int tmp; if(grid[i][j] == '1'){ tmp = 1; while(grid[i][j + 1] == '1'){ tmp++; j++; } }else{ continue; } mini = min(mini, tmp); } minsbaris = min(minsbaris, mini); } //cek tiap kolom int minkolom = LLONG_MAX; for(int i = 1; i <= m; i++){ int j = 1; int mini = LLONG_MAX; for(; j <= n; j++){ int tmp; if(grid[j][i] == '1'){ tmp = 1; while(grid[j + 1][i] == '1'){ tmp++; j++; } }else{ continue; } mini = min(mini, tmp); } minkolom = min(minkolom, mini); } //cout << "minsbaris = " << minsbaris << " minkolom = " << minkolom << endl; cout << minkolom * minsbaris << endl; } } int32_t main() { IOS cin >> n >> m; string s[n + 1]; for(int i = 1; i <= n; i++){ cin >> s[i]; } for(int i = 1; i <= n; i++){ for(int j = 1; j <= m; j++){ grid[i][j] = s[i][j - 1]; } } solve(); }
#Verdict Execution timeMemoryGrader output
Fetching results...