제출 #868139

#제출 시각아이디문제언어결과실행 시간메모리
86813912345678금 캐기 (IZhO14_divide)C++17
100 / 100
51 ms12628 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long const int nx=1e5+5; ll d[nx], g[nx], p[nx], qs[nx], qsp[nx], n, res, mn=LLONG_MAX; set<pair<ll, ll>> s; int main() { cin.tie(NULL)->sync_with_stdio(false); cin>>n; for (int i=1; i<=n; i++) cin>>d[i]>>g[i]>>p[i], qs[i]=qs[i-1]+g[i], qsp[i]=qsp[i-1]+p[i]; for (int i=1; i<=n; i++) { if (qsp[i-1]-d[i]<mn) mn=qsp[i-1]-d[i], s.insert({mn, -qs[i-1]}); res=max(res, prev(s.upper_bound(make_pair(qsp[i]-d[i], LLONG_MAX)))->second+qs[i]); } cout<<res; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...