Submission #1235586

#TimeUsernameProblemLanguageResultExecution timeMemory
1235586AishaMaxcomp (info1cup18_maxcomp)C++20
0 / 100
1 ms328 KiB
#include "bits/stdc++.h" using namespace std; #define int long long signed main() { int n, m; cin >> n >> m; vector <int> a(m + 1); for (int i = 1; i <= m; i ++) cin >> a[i]; vector <vector <int>> dp(m + 1, vector <int> (4)); // max ind min ind int ans = -1; dp[1] = {a[1], 1, a[1], 1}; for (int i = 2; i <= m; i ++) { dp[i] = {a[i], i, a[i], i}; if (dp[i][0] < dp[i - 1][0]) dp[i][0] = dp[i - 1][0], dp[i][1] = dp[i - 1][1]; if (dp[i][2] > dp[i - 1][2]) dp[i][2] = dp[i - 1][2], dp[i][3] = dp[i - 1][3]; // cout << dp[i][0] << ' ' << dp[i][1] << ' ' << dp[i][2] << ' ' << dp[i][3] << endl; ans = max({ans, dp[i][0] - a[i] - i + dp[i][1] - 1, a[i] - dp[i][2] - i + dp[i][3] - 1, dp[i][0] - dp[i][2] - abs(dp[i][1] - dp[i][3]) - 1}); } cout << ans << endl; 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...