Submission #341505

#TimeUsernameProblemLanguageResultExecution timeMemory
341505Sprdalo금 캐기 (IZhO14_divide)C++17
48 / 100
1087 ms3436 KiB
#include <bits/stdc++.h>

using namespace std;

#define int ll
typedef long long ll;
typedef long double ld;
typedef pair<int, int> pi;
typedef pair<ll, ll> pl;
typedef vector<int> vi;
typedef vector<ll> vl;
typedef vector<double> vd;
typedef vector<bool> vb;
typedef vector<char> vc;
typedef vector<string> vs;
typedef vector<pi> vp;
typedef vector<pl> vpl;

struct st{
    int x;
    int g;
    int d;
};

signed main()
{
    ios_base::sync_with_stdio(false); 
    cin.tie(nullptr); 
    cout.tie(nullptr); 
    cerr.tie(nullptr);    

    int n, sol = 0;
    cin >> n;

    vector<st> a(n+1);
    for (int i = 1; i <= n; ++i){
        cin >> a[i].x >> a[i].g >> a[i].d;

        if (a[i].d >= 1)
            sol = max(sol, a[i].g);
    }

    auto p = vi(n+1); auto t = vi(n+1);
    for (int i = 1; i <= n; ++i){
        p[i] = p[i-1] + a[i].g;
        t[i] = t[i-1] + a[i].d;
    }

    for (int i = 1; i <= n; ++i){
        for (int j = i+1; j<=n; ++j){
            if (a[j].x - a[i].x <= t[j] - t[i-1])
                sol = max(sol, p[j]-p[i-1]);
        }
    }

    cout << sol << '\n';
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...