Submission #1079956

#TimeUsernameProblemLanguageResultExecution timeMemory
1079956_rain_Art Exhibition (JOI18_art)C++14
100 / 100
152 ms28724 KiB
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define fixbug true

void SETIO(string name = ""){
    if (name=="") return;
    freopen((name+".inp").c_str(),"r",stdin);
//    freopen((name+".out").c_str(),"w",stdout);
    return;
}

const int maxn = 500000;
const ll INF = (ll)1e18;
#define fi first
#define se second
pair<ll,ll> a[maxn+2] ;
ll pre[maxn+2] , f[maxn+2];
int n;

int main(){
    ios::sync_with_stdio(false);
    cin.tie(0); cout.tie(0);
    SETIO("");

    cin >> n;
    for (int i = 1; i<= n; ++i) cin >> a[i].fi >> a[i].se;
    sort(a+1,a+n+1);
    for (int i = 1; i <= n; ++i) pre[i] = pre[i - 1] + a[i].se ;
    f[0] = -INF;
    ll ans = 0;
    for (int i = 1; i <= n; ++i){
        f[i] = max(f[i - 1] , -pre[i-1] + a[i].fi);
        ans = max(ans , pre[i] + f[i] - a[i].fi);

    }
    cout << ans;
}

Compilation message (stderr)

art.cpp: In function 'void SETIO(std::string)':
art.cpp:8:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
    8 |     freopen((name+".inp").c_str(),"r",stdin);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...