제출 #729360

#제출 시각아이디문제언어결과실행 시간메모리
729360pccArt Exhibition (JOI18_art)C++14
100 / 100
182 ms20396 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define int ll #define pll pair<ll,ll> #define fs first #define sc second void solve(){ ll n; cin>>n; pll tmp[n]; for(auto &i:tmp){ cin>>i.fs>>i.sc; } sort(tmp,tmp+n); vector<pll> arr; for(auto &i:tmp){ if(arr.empty()||arr.back().fs != i.fs)arr.push_back(i); else arr.back().sc+=i.sc; } n = arr.size(); ll pref[n]; pref[0] = arr[0].sc; for(int i = 1;i<n;i++)pref[i] = pref[i-1]+arr[i].sc; ll ans = pref[0]; ll big = arr[0].fs; for(int i = 1;i<n;i++){ big = max(big,arr[i].fs-pref[i-1]); ans = max(ans,big+pref[i]-arr[i].fs); } cout<<ans; } /* void solve(){ ll n; cin>>n; pll arr[n]; for(auto &i:arr)cin>>i.fs>>i.sc; ll ans = LLONG_MIN; for(ll i = 1;i<(1LL<<n);i++){ ll amax = 0,amin = 1e18; ll sum = 0; for(int j = 0;j<n;j++){ if(i&(1LL<<j))sum += arr[j].sc,amin = min(amin,arr[j].fs),amax = max(amax,arr[j].fs); } ans = max(ans,sum-amax+amin); } cout<<ans; } */ main(){ ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); int t = 1; while(t--)solve(); }

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

art.cpp:58:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   58 | main(){
      | ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...