Submission #17898

#TimeUsernameProblemLanguageResultExecution timeMemory
17898chromeDivide and conquer (IZhO14_divide)C++98
48 / 100
1000 ms6416 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define foreach(it, S) for (__typeof (S.begin()) it = S.begin(); it != S.end(); it++) #define all(x) x.begin(), x.end() #define endl '\n' #define _ ios_base :: sync_with_stdio(false); cin.tie(NULL); #ifdef inputf #define fname "" #else #define fname "" // <- Here #endif const double eps = 1e-9; const int MaxN = int(2e5) + 256; const int MOD = int(1e9) + 7; template <typename T> inline T gcd(T a, T b) { return b ? gcd (b, a % b) : a; } inline bool Palindrome(const string& s) { return equal(s.begin(), s.end(), s.rbegin()); } ll x[MaxN], g[MaxN], e[MaxN]; int main() { // _ #ifdef lcl freopen(fname".in", "r", stdin); freopen(fname".out", "w", stdout); #endif int n; scanf("%d", &n); for (int i = 1; i <= n; ++i) { scanf("%lld%lld%lld", x + i, g + i, e + i); e[i] += e[i - 1]; g[i] += g[i - 1]; } ll res = 0; for (int i = 1; i <= n; ++i) for (int j = i; j <= n; ++j) { if (e[j] - e[i - 1] >= x[j] - x[i]) { res = max(res, g[j] - g[i - 1]); } } printf("%lld", res); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...