Submission #681480

#TimeUsernameProblemLanguageResultExecution timeMemory
681480boykutDivide and conquer (IZhO14_divide)C++14
17 / 100
1 ms340 KiB
#include <bits/stdc++.h> using namespace std; const int N = 100100; int x[N], g[N], e[N]; long long pg[N], pe[N], prefmin[N]; int main() { ios::sync_with_stdio(0); cin.tie(0); int n; cin >> n; for (int i = 1; i <= n; i++) { cin >> x[i] >> g[i] >> e[i]; pg[i] = pg[i-1] + g[i]; pe[i] = pe[i-1] + e[i]; prefmin[i] = pe[i-1] - x[i]; } long long answer = 0; for (int r = 1; r <= n; r++) { int A = 1, B = r; while (A < B) { int l = (A + B) >> 1; if (prefmin[l] <= pe[r]-x[r]) B = l; else A = l + 1; } answer = max(answer, pg[r]-pg[B-1]); } cout << answer; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...