제출 #1286131

#제출 시각아이디문제언어결과실행 시간메모리
1286131Yusif_NazarliArt Exhibition (JOI18_art)C++20
100 / 100
197 ms16604 KiB
#include "bits/stdc++.h" #include "ext/pb_ds/assoc_container.hpp" #define int long long #define pii pair<int , int> #define pb push_back #define all(v) v.begin() , v.end() #define S second #define F first using namespace std; using namespace __gnu_pbds; template <typename t> using indexed_set = tree<t , null_type , less<t> , rb_tree_tag , tree_order_statistics_node_update>; void Yusiff(){ int n; cin >> n; vector<pii> v; int a[n] , b[n]; for(int i = 0; i < n; i++){ cin >> a[i] >> b[i]; v.pb({a[i] , b[i]}); } sort(a , a + n); sort(b , b + n); sort(all(v)); int mnn = v[0].F, mxx = v[0].F; int sum = v[0].S; int mx = v[0].S; for(int i = 1; i < v.size(); i++){ int tempmx = mxx; int tempmn = mnn; tempmx = max(tempmx , v[i].F); tempmn = min(tempmn , v[i].F); sum = max(v[i].S, sum + v[i].S - (v[i].F - v[i - 1].F)); if(mx < sum){ mxx = tempmx; mnn = tempmn; mx = sum; } } cout << mx << '\n'; } signed main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int t = 1; // cin >> t; while(t--){ Yusiff(); } } /* 1 5 4 1 4 2 5 3 9 1 10 3 */
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...