제출 #1290521

#제출 시각아이디문제언어결과실행 시간메모리
1290521opituArt Exhibition (JOI18_art)C++20
100 / 100
453 ms16072 KiB
#include <bits/stdc++.h> #define int long long #define iamaperson int main() {\ preprocess();\ int t = 1; while (t--) solve();\ } using namespace std; int INF = 9e18+23; void preprocess() {} // just in case!!!!1 void solve() { int n; cin >> n; vector<array<int, 2>> x(n); for (auto &[a, b] : x) cin >> a >> b; vector<array<int, 2>> dp(1+n, {-INF-1, -INF-1}); sort(x.begin(), x.end()); dp[n][0] = -INF; dp[n][1] = 0; for (int i = n-1; i >= 0; --i) { if (i != n-1) { dp[i][0] = max(dp[i][0], dp[i+1][1]+x[i][0]+x[i][1]); dp[i][1] = max(dp[i][1], dp[i+1][1]+x[i][1]); } dp[i][0] = max(dp[i][0], dp[i+1][0]); dp[i][0] = max(dp[i][0], x[i][1]); dp[i][1] = max(dp[i][1], x[i][1]-x[i][0]); } cout << dp[0][0]; } #undef int iamaperson
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...