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 <iostream>
#include <bits/stdc++.h>
#include <cmath>
#include <algorithm>
#include <vector>
#include <deque>
#include <set>
#include <stack>
#include <string>
#include <map>
#include <queue>
#define int long long
using namespace std;
const long long oo = 1000000000000000000;
long long sum, ans = 0, mx = 0, mn = 1000000000, num, pos;
/*
ViHHiPuh
(( `'-""``""-'` ))
)-__-_.._-__-(
/ --- (o _ o) --- \
\ .-* ( .0. ) *-. /
_'-. ,_ '=' _, .-'_
/ `;#'#'# - #'#'#;` \
\_)) -----'#'----- ((_/
# --------- #
'# ------- ------ #'
/..-'# ------- #'-.\
_\...-\'# -- #'/-.../_
((____)- '#' -(____))
cout << fixed << setprecision(6) << x;
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
freopen ( "sum.in", "r", stdin )
*/
int n, m, a[ 500001 ], b[ 500001 ], p[ 500001 ];
vector <pair<int, int> > v;
set <int> st;
vector <int> vv;
main () {
cin >> n;
for ( int i = 1; i <= n; i ++ ) {
cin >> a[ i ] >> b[ i ];
v.push_back( { a[ i ], b[ i ] } );
}
sort( v.begin(), v.end() );
for ( int i = 0; i < v.size(); i ++ ) {
p[ i + 1 ] = p[ i ] + v[ i ].second;
}
for ( int i = 1; i <= n; i ++ ) {
st.insert( p[ i - 1 ] - v[ i - 1 ].first );
ans = max( ans, ( p[ i ] - v[ i - 1 ].first ) - *st.begin() );
}
cout << ans;
}
/*
(p[ i ] - p[j - 1] ) - (a[i] - a[j])
p[i] - p[j-1] - a[i] + a[j]
p[i] - a[i] - p[j-1] + a[j]
*/
Compilation message (stderr)
art.cpp:51:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
51 | main () {
| ^~~~
art.cpp: In function 'int main()':
art.cpp:58:21: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
58 | for ( int i = 0; i < v.size(); i ++ ) {
| ~~^~~~~~~~~~
# | 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... |