#include <bits/stdc++.h> #include "kanapka.h" using namespace std; const int MAXN = 1e3+5; int tab[MAXN]; long long dp[MAXN][2]; int main() { int n = GetN(); for (int i = 1; i <= n; i++) tab[i] = GetTaste(i); for (int i = 1; i <= n; i++) dp[i][0] = tab[i] + dp[i-1][0]; for (int i = n; i > 0; i--) dp[i][1] = tab[i] + dp[i+1][1]; long long res = 0; for (int i = 0; i <= n; i++) { long long tmp = 0; for (int j = n; j > i; j--) { tmp += dp[i][0] + dp[j][1]; } res = max(res, tmp); } cout << res << "\n"; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | #include <bits/stdc++.h> #include "kanapka.h" using namespace std; const int MAXN = 1e3+5; int tab[MAXN]; long long dp[MAXN][2]; int main() { int n = GetN(); for (int i = 1; i <= n; i++) tab[i] = GetTaste(i); for (int i = 1; i <= n; i++) dp[i][0] = tab[i] + dp[i-1][0]; for (int i = n; i > 0; i--) dp[i][1] = tab[i] + dp[i+1][1]; long long res = 0; for (int i = 0; i <= n; i++) { long long tmp = 0; for (int j = n; j > i; j--) { tmp += dp[i][0] + dp[j][1]; } res = max(res, tmp); } cout << res << "\n"; } |