제출 #66735

#제출 시각아이디문제언어결과실행 시간메모리
66735ekremArt Exhibition (JOI18_art)C++98
0 / 100
3 ms564 KiB
#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;
}

컴파일 시 표준 에러 (stderr) 메시지

art.cpp: In function 'int main()':
art.cpp:17:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%lld",&n);
  ~~~~~^~~~~~~~~~~
art.cpp:19:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%lld %lld",&a[i].st ,&a[i].nd);
   ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...