Submission #1108539

#TimeUsernameProblemLanguageResultExecution timeMemory
1108539vjudge1Art Exhibition (JOI18_art)C++17
100 / 100
122 ms12120 KiB
#include <bits/stdc++.h>

using namespace std;
typedef long long ll;

const int maxN = 5e5 + 5;
pair<ll, ll> arr[maxN];
ll c[maxN];
int n;

int main()
{
    if(fopen("input.txt", "r")){
        freopen("input.txt", "r", stdin);
    }cin.tie(NULL)->sync_with_stdio(false);

    cin >> n;
    for(int i = 1; i <= n; ++i){
        cin >> arr[i].first >> arr[i].second;
    }
    sort(arr + 1, arr + n + 1);
    for(int i = 1; i < n; ++i)
        c[i] = arr[i].second - arr[i + 1].first + arr[i].first;

    long long mi = 0, s = 0, res = arr[1].second - arr[1].first;
    for(int i = 1; i < n; ++i){
        s += c[i];
        mi = min(mi, s);
        res = max(res, arr[i + 1].second + s - mi);
    }
    cout << res;
    return 0;
}

Compilation message (stderr)

art.cpp: In function 'int main()':
art.cpp:14:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   14 |         freopen("input.txt", "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...