Submission #952497

#TimeUsernameProblemLanguageResultExecution timeMemory
952497nguyennhDivide and conquer (IZhO14_divide)C++14
0 / 100
1 ms348 KiB
#include<bits/stdc++.h> #define el '\n' using namespace std ; const int MN = 1e5 + 6; int x[MN] , g[MN] , d[MN] , n; namespace sub_trau{ void solve(){ int64_t ans = 0; vector<int64_t> pref_gold(n + 5) , pref_en(n + 5); for ( int i = 1 ; i <= n ; i++ ){ pref_gold[i] = pref_gold[i - 1] + g[i]; pref_en[i] = pref_en[i - 1] + d[i]; } for ( int i = 1 ; i <= n ; i++ ){ for ( int j = i ; j <= n ; j++ ){ if (pref_en[i] - pref_en[j - 1] >= x[j] - x[i]) ans = max(ans , pref_gold[i] - pref_gold[j - 1]); } } cout << ans; } } int32_t main (){ ios_base::sync_with_stdio(0); cin.tie(0); cin >> n; for ( int i = 1 ; i <= n ; i++ ) cin >> x[i] >> g[i] >> d[i]; if (n <= 5000) sub_trau::solve(); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...