Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- #define int long long
- const int N = 100005;
- int a[N], f[N], s[N];
- void solve() {
- memset(a, 0, sizeof(a));
- memset(s, 0, sizeof(s));
- memset(f, 0x8f, sizeof(f)); f[0] = 0;
- int n; cin >> n;
- for (int i = 1; i <= n; i++) {
- cin >> a[i];
- s[i] = a[i] + s[i - 1];
- }
- int ans = 0;
- for (int i = 1; i <= n + 3; i++) {
- for (int j = 1; j <= 3; j++) if (i >= j * 2) {
- f[i] = max(f[i], f[i - j * 2] + s[i - j] - s[i - j * 2]);
- }
- ans = max(ans, f[i]);
- }
- cout << ans << '\n';
- }
- signed main() {
- int t; cin >> t;
- while (t--) solve();
- }
Advertisement
Add Comment
Please, Sign In to add comment