This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
// In the name of GOD
#include <bits/stdc++.h>
using namespace std;
#define good exit(0);
#define nl endl
#define ios ios_base :: sync_with_stdio(0), cin.tie(0), cout.tie(0);
#define sz(s) (int)s.size()
#define all(s) s.begin(), s.end()
#define pb push_back
#define bb begin()
#define ee end()
#define ff first
#define ss second
#define ll long long
#define db double
#define pii pair<int, int>
const int N = 1e5 + 55;
const int M = 1e9 + 7;
int n, m;
ll a[N], b[N], c[N];
ll ans;
int main(){
cin >> n;
for(int i = 1; i <= n; ++i){
ll q, w, e;
cin >> q >> w >> e;
a[i] = q;
b[i] = b[i - 1] + w;
c[i] = c[i - 1] + e;
}
for(int i = 1; i <= n; ++i){
ans = max(ans, b[i] - b[i - 1]);
int l = i + 1, r = n;
while(l <= r){
int m = (l + r) / 2;
if(a[m] - a[i] <= c[m] - c[i -1]){
ans = max(ans, b[m] - b[i - 1]);
l = m + 1;
} else{
r = m - 1;
}
}
}
cout << ans << nl;
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |