| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 768671 | LinkedArray | Art Exhibition (JOI18_art) | C++17 | 1 ms | 212 KiB | 
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    
    int n;
    
    cin >> n;
    pair<int, int> artwork[n + 1];
    for(int i = 1; i <= n; i++){
        cin >> artwork[i].first >> artwork[i].second;
        // First = Size; Second = Value;
    }
    sort(artwork, artwork + n + 1); // Sort the vector
    int ans = 0, totalValue = 0, restTillTotalValue = 0;
    for(int i = 1; i <= n; i++){
        // Keep the current value sum
        // We also keep a variable restTillTotalValue (size - lastSum(lastSum which can be written as currentSum - currentValue));
        ans = max(ans, (totalValue = totalValue + artwork[i].second) - (artwork[i].first - (restTillTotalValue = max(restTillTotalValue, artwork[i].first - (totalValue - artwork[i].second)))));
    }
    cout << ans;
	return 0;
}
Compilation message (stderr)
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
