제출 #870972

#제출 시각아이디문제언어결과실행 시간메모리
870972aaron_dcoderArt Exhibition (JOI18_art)C++17
100 / 100
402 ms24876 KiB
#define NDEBUG

#ifdef NDEBUG
#define dbg(TXTMSG) if constexpr (false) cerr << "lol"
#define dbgv(VARN) ((void)0)
#define dbgfor(COND) if constexpr (false) for (COND)

#else
#define _GLIBCXX_DEBUG 1
#define _GLIBCXX_DEBUG_PEDANTIC 1
#pragma GCC optimize("trapv")
#define dbg(TXTMSG) cerr << "\n" << TXTMSG
#define dbgv(VARN) cerr << "\n" << #VARN << " = "<< VARN << ", line: " << __LINE__ << "\n"
#define dbgfor(COND) for (COND)

#endif

#include <bits/stdc++.h>
using namespace std;
using ll = long long; 
using pll = pair<ll,ll>;
#define e0 first
#define e1 second
constexpr ll INFTY = 2e18;

ll N;

int main() {

	cin >> N;

	vector<pll> SV(N);
	for (ll i = 0; i < N; ++i)
	{
		cin >> SV[i].e0 >> SV[i].e1;
	}

	sort(SV.begin(),SV.end());


	vector<ll> dp(N);
	dp[0] = SV[0].e1;
	for (ll i = 1; i < N; ++i)
	{
		dp[i] = max(SV[i].e1, dp[i-1] - SV[i].e0 + SV[i-1].e0 + SV[i].e1);
	}

	ll outp = 0;
	for (ll i : dp)
	{
		dbg(i);
		outp = max(outp,i);
	}

	cout << outp;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...