Submission #124599

#TimeUsernameProblemLanguageResultExecution timeMemory
124599AdOjis485Orchard (NOI14_orchard)C++14
0 / 25
1082 ms23804 KiB
// // main.cpp // orchard // // Created by Ema Skottova on 03.07.19. // Copyright © 2019 AdOjis485. All rights reserved. // #include <iostream> #include <vector> #define int int64_t using namespace std; signed main() { int n, m; cin >> n >> m; vector<vector<int>> ps(n + 1, vector<int> (m + 1)); int sum = 0; for(int i = 0; i <= n; i ++){ int row = 0; for(int j = 0; j <= m; j ++){ if(i == 0 || j == 0){ ps[i][j] = 0; } else{ int x; cin >> x; ps[i][j] = x + row; if(i > 1){ ps[i][j] += ps[i - 1][j]; } row += x; sum += x; } } } int mi = n * m; if(n == 1){ for(int i = 1; i <= m; i ++){ for(int j = 1; j <= i; j ++){ int rect_area = i - j + 1; int ones_inside = ps[1][i] - ps[1][j - 1]; int zeros_inside = rect_area - ones_inside; int outside_area = n * m - rect_area; int ones_outside = sum - ones_inside; int zeros_outside = outside_area - ones_outside; int zero_one = zeros_inside + ones_outside; int one_zero = ones_inside + zeros_outside; mi = min(mi, min(one_zero, zero_one)); } } } else{ for(int i1 = 1; i1 <= n; i1 ++){ for(int i2 = 1; i2 <= i1; i2 ++){ for(int j1 = 1; j1 <= m; j1 ++){ for(int j2 = 1; j2 <= j1; j2 ++){ int rect_area = (i1 - i2 + 1) * (j1 - j2 + 1); int ones_inside = ps[i1][j1] - ps[i1][j2 - 1] - ps[i2 - 1][j1] + ps[i2 - 1][j2 - 1]; int zeros_inside = rect_area - ones_inside; int outside_area = n * m - rect_area; int ones_outside = sum - ones_inside; int zeros_outside = outside_area - ones_outside; int zero_one = zeros_inside + ones_outside; int one_zero = ones_inside + zeros_outside; mi = min(mi, min(zero_one, one_zero)); } } } } } cout << mi << '\n'; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...