# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
66735 | 2018-08-12T07:59:57 Z | ekrem | Art Exhibition (JOI18_art) | C++ | 3 ms | 564 KB |
#include <bits/stdc++.h> #define st first #define nd second #define mp make_pair #define pb push_back #define N 1000005 using namespace std; typedef long long ll; ll n, l, r, mx, mn, top, ans; pair < ll , ll > a[N]; int main() { // freopen("in.txt", "r", stdin); // freopen("out.txt", "w", stdout); scanf("%lld",&n); for(ll i = 1; i <= n; i++) scanf("%lld %lld",&a[i].st ,&a[i].nd); sort(a + 1, a + n + 1); l = r = 1; mx = a[1].st; mn = a[1].st; top = a[1].nd; ans = max(ans, top - (mx - mn)); for(r = 2; r <= n; r++){ top += a[r].nd; mx = a[r].st; while(l < r){ if(top - a[l].nd - (mx - a[l + 1].st) > top - (mx - mn)){ top -= a[l].nd; l++; mn = a[l].st; } else break; } ans = max(ans, top - (mx - mn)); } printf("%lld\n",ans); return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 376 KB | Output is correct |
2 | Correct | 2 ms | 376 KB | Output is correct |
3 | Incorrect | 2 ms | 564 KB | Output isn't correct |
4 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 376 KB | Output is correct |
2 | Correct | 2 ms | 376 KB | Output is correct |
3 | Incorrect | 2 ms | 564 KB | Output isn't correct |
4 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 376 KB | Output is correct |
2 | Correct | 2 ms | 376 KB | Output is correct |
3 | Incorrect | 2 ms | 564 KB | Output isn't correct |
4 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 376 KB | Output is correct |
2 | Correct | 2 ms | 376 KB | Output is correct |
3 | Incorrect | 2 ms | 564 KB | Output isn't correct |
4 | Halted | 0 ms | 0 KB | - |