Submission #364236

#TimeUsernameProblemLanguageResultExecution timeMemory
364236RainbowbunnyArt Exhibition (JOI18_art)C++17
100 / 100
240 ms24940 KiB
#include <iostream> #include <queue> #include <algorithm> #include <utility> #include <vector> int n; long long ans = 0; long long suffixmax[500005]; std::pair <long long, long long> Art[500005]; int main() { std::ios_base::sync_with_stdio(false); std::cin.tie(0); std::cout.tie(0); std::cin >> n; for(int i = 1; i <= n; i++) { std::cin >> Art[i].first >> Art[i].second; } sort(Art + 1, Art + n + 1); for(int i = 1; i <= n; i++) { Art[i].second += Art[i - 1].second; } suffixmax[n] = Art[n].second - Art[n].first; for(int i = n - 1; i >= 1; i--) { suffixmax[i] = std::max(suffixmax[i + 1], Art[i].second - Art[i].first); } for(int i = 1; i <= n; i++) { ans = std::max(ans, suffixmax[i] - Art[i - 1].second + Art[i].first); } std::cout << ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...