이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <iostream>
#include <algorithm>
#define int long long
using namespace std;
const int MAX_NOMBRE = 5e5+42;
pair<int, int> tableau[MAX_NOMBRE];
int nbTableau;
signed main() {
cin >> nbTableau;
for(int i = 0; i < nbTableau; i++) {
cin >> tableau[i].first >> tableau[i].second;
}
sort(tableau, tableau + nbTableau);
int fin = 0, valOpti = 0, sommeCur = 0;
for(int i = 0; i < nbTableau; i++) {
sommeCur += tableau[i].second;
int valCur = sommeCur - tableau[i].first + tableau[0].first;
if(valCur > valOpti) {
valOpti = valCur;
fin = i;
}
}
valOpti = 0; sommeCur = 0;
for(int i = fin; i >= 0; i--) {
sommeCur += tableau[i].second;
int valCur = sommeCur - tableau[fin].first + tableau[i].first;
valOpti = max(valOpti, valCur);
}
cout << valOpti;
}
# | 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... |