Submission #1237539

#TimeUsernameProblemLanguageResultExecution timeMemory
1237539fauntleroyArt Exhibition (JOI18_art)C++20
0 / 100
0 ms320 KiB
#include <iostream> #include <cstdio> #include <vector> #include <array> #include <string> #include <algorithm> #include <numeric> #include <map> #include <unordered_map> #include <set> #include <unordered_set> #include <queue> #include <cmath> #include <climits> #include <iomanip> #include <limits> #include <tuple> #include <stack> #include <bitset> #include <cstring> #include <sstream> #include <functional> #include <random> #define int long long using namespace std; void solve() { int n; cin >> n; vector<pair<int, int>> a(n); for (auto& e : a) cin >> e.first >> e.second; sort(a.begin(), a.end()); vector<int> pref(n, 0); pref[0] = a[0].second; for (int i = 1; i < n; ++i) pref[i] = pref[i - 1] + a[i].second; for (int i = 0; i < n; ++i) pref[i] -= a[i].first; vector<int> mx(n, -1e18); mx[n - 1] = pref[n - 1]; for (int i = n - 2; i >= 0; --i) mx[i] = max(mx[i + 1], pref[i]); int ans = 0; for (int i = 0; i < n - 1; ++i) { int s = a[i].first - (i > 0 ? pref[i - 1] : 0) - (i > 0 ? a[i - 1].first : 0) + mx[i + 1]; ans = max(ans, s); } cout << ans << '\n'; } signed main() { ios::sync_with_stdio(false); cin.tie(nullptr); solve(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...