#include<bits/stdc++.h>
using namespace std;
mt19937 mt(chrono::steady_clock::now().time_since_epoch().count());
#define int long long
#define pb push_back
#define ppb pop_back
#define pf push_front
#define ppf pop_front
#define f first
#define s second
//#define endl '\n'
const int N=200010;
const int INF=1000000010;
const int INFLL=1000000000000000010;
const int mod=998244353;
typedef pair<int,int> pii;
int32_t main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int n,ans=0;
cin >> n;
vector<int>d(n);
for(int i=0;i<n;i++)
{
int a,b;
cin >> a >> b;
d[i]=a-b+(i ? d[i-1] : 0);
}
priority_queue<int>fila;
for(int i=0;i<n-1;i++)
{
if(d[i]<0)
{
ans+=abs(d[i]);
d[i]=0;
}
ans+=d[i];
fila.push(d[i]);
fila.push(d[i]);
fila.pop();
}
while(!fila.empty())
{
ans-=min(fila.top(),d[n-1]);
fila.pop();
}
cout << ans << endl;
return 0;
}
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |