Submission #225189

#TimeUsernameProblemLanguageResultExecution timeMemory
225189muhammad_hokimiyonArt Exhibition (JOI18_art)C++14
100 / 100
407 ms50284 KiB
#include <bits/stdc++.h> //mt19937 rng(chrono::steady_clock::now().time_since_epoch().count()); //#pragma GCC optimize("Ofast") //1.0 * clock() / CLOCKS_PER_SEC #define fi first #define se second #define ll long long #define dl double long using namespace std; const ll NN = 1e10 + 7; const int N = 5e5 + 7; const int M = 6; const int mod = 1e9 + 7; const ll inf = 1e18 + 7; const dl rf = 1e-14; const int B = sqrt(N); int n; ll a[N]; ll b[N]; ll sum[N]; void solve1() { cin >> n; vector < int > v; for( int i = 1; i <= n; i++ ){ cin >> a[i] >> b[i]; v.push_back(i); } sort( v.begin() , v.end() , [&] ( int i , int j ){ return a[i] < a[j]; } ); set < ll > s; for( int h = 1; h <= n; h++ ){ int i = v[h - 1]; sum[h] = sum[h - 1] + b[i]; } ll ans = -1e18; for( int h = 1; h <= n; h++ ){ int i = v[h - 1]; s.insert( sum[h - 1] - a[i] ); auto x = *s.begin(); ans = max( ans , sum[h] - a[i] - x ); } cout << ans; } int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); //freopen( "input.txt" , "r" , stdin ); //freopen( "output.txt" , "w" , stdout ); int cghf = 1;//cin >> cghf; while( cghf-- ){ solve1(); } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...