Submission #41181

#TimeUsernameProblemLanguageResultExecution timeMemory
41181DoanPhuDucOrchard (NOI14_orchard)C++98
25 / 25
199 ms34100 KiB
#include <bits/stdc++.h> #define FOR(x, a, b) for (int x = a; x <= b; ++x) #define FOD(x, a, b) for (int x = a; x >= b; --x) #define REP(x, a, b) for (int x = a; x < b; ++x) #define DEBUG(X) { cout << #X << " = " << X << endl; } #define PR(A, n) { cout << #A << " = "; FOR(_, 1, n) cout << A[_] << " "; cout << endl; } #define PR0(A, n) { cout << #A << " = "; REP(_, 0, n) cout << A[_] << " "; cout << endl; } using namespace std; typedef long long LL; typedef pair <int, int> II; const int INF = 0x3f3f3f3f; int n, m; vector <vector <int> > s[2]; int main() { #ifdef LOCAL freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif // LOCAL scanf("%d%d", &n, &m); REP(i, 0, 2) { s[i].resize(n + 2, vector <int> (m + 2, 0)); } int all = 0; FOR(i, 1, n) { FOR(j, 1, m) { int v; scanf("%d", &v); all += (v == 1); FOR(k, 0, 1) s[k][i][j] = s[k][i - 1][j]; s[v][i][j]++; } } int ans = INF; FOR(i, 1, n) { FOR(j, i, n) { int prev = 0, sum = 0; FOR(k, 1, m) { int diff = (s[0][j][k] - s[0][i - 1][k]) - (s[1][j][k] - s[1][i - 1][k]); sum += diff; ans = min(ans, sum - prev); prev = max(prev, sum); } } } // DEBUG(ans); cout << all + ans << endl; return 0; }

Compilation message (stderr)

orchard.cpp: In function 'int main()':
orchard.cpp:26:26: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d%d", &n, &m);
                          ^
orchard.cpp:33:35: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
             int v; scanf("%d", &v);
                                   ^
#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...