Submission #394384

#TimeUsernameProblemLanguageResultExecution timeMemory
394384maomao90Orchard (NOI14_orchard)C++14
25 / 25
275 ms18000 KiB
#include <bits/stdc++.h> using namespace std; #define mnto(x, y) x = min(x, (__typeof__(x)) y) #define mxto(x, y) x = max(x, (__typeof__(x)) y) #define REP(i, s, e) for (int i = s; i < e; i++) #define RREP(i, s, e) for (int i = s; i >= e; i--) typedef long long ll; typedef long double ld; #define MP make_pair #define FI first #define SE second typedef pair<int, int> ii; typedef pair<ll, ll> pll; #define MT make_tuple typedef tuple<int, int, int> iii; #define ALL(_a) _a.begin(), _a.end() #define pb emplace_back typedef vector<int> vi; typedef vector<ii> vii; #define INF 1000000005 #define LINF 1000000000000000005 #define MOD 1000000007 int n, m; vector<vi> cols; int ans; int sum(int c, int t, int b) { return cols[b][c] - cols[t - 1][c]; } int main() { scanf("%d%d", &n, &m); vi vect; REP (i, 0, m + 1) vect.pb(0); cols.pb(vect); REP (i, 1, n + 1) { vi vect; vect.pb(0); REP (j, 1, m + 1) { int temp; scanf("%d", &temp); vect.pb(temp); ans += temp; } cols.pb(vect); } REP (i, 1, n + 1) { REP (j, 1, m + 1) { cols[i][j] += cols[i - 1][j]; } } vector<vector<int>> dp(n + 5, vector<int>(n + 5, 0)); int sub = INF; REP (k, 1, m + 1) { REP (i, 1, n + 1) { REP (j, i, n + 1) { dp[i][j] = min(dp[i][j], 0) - 2 * sum(k, i, j) + (j - i + 1); mnto(sub, dp[i][j]); } } } ans += sub; printf("%d\n", ans); return 0; }

Compilation message (stderr)

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