Submission #37392

#TimeUsernameProblemLanguageResultExecution timeMemory
37392adletDivide and conquer (IZhO14_divide)C++14
48 / 100
1000 ms4748 KiB
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

const int N = 1e5 + 5;

int n, x[N], g[N], e[N];

ll de[N], dg[N], ans;

int main() {
//    freopen("divide.in", "r", stdin);
//    freopen("divide.out", "w", stdout);
    cin >> n;
    for (int i = 1; i <= n; ++i) {
        cin >> x[i] >> g[i] >> e[i];
        dg[i] += dg[i - 1] + g[i];
        de[i] += de[i - 1] + e[i];
    }
    for (int l = 1; l <= n; ++l) {
        for (int r = l; r <= n; ++r) {
            int len = x[r] - x[l];
//            cout << l << " " << r << " " << dg[r] - dg[l - 1] << "\n";
            if (len <= de[r] - de[l - 1] && dg[r] - dg[l - 1] > ans) {
                ans = dg[r] - dg[l - 1];
            }
        }
    }
    cout << ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...