Submission #1246917

#TimeUsernameProblemLanguageResultExecution timeMemory
1246917yoshiArt Exhibition (JOI18_art)C++20
0 / 100
0 ms320 KiB
#include<bits/stdc++.h> using namespace std; #define ll long long ll i,j; int main(){ ll n; cin>>n; vector<ll> a(n) , b(n); for(i=0; i<n; i++){ cin>>a[i]>>b[i]; } ll mn=1e9, mx=1; ll ans=0; for( i=0; i<n-1; i++){ for(j=i+1; j<n; j++){ if((b[i] + b[j] - (max(a[i] , a[j]) - min(a[i], a[j]))) > ans) { ans = b[i] + b[j] - (max(a[i] , a[j]) - min(a[i], a[j])); mx=(a[i] > a[j] ? i : j); mn=(a[i] > a[j] ? j : i); } } } // cout<<mn<<" "<<mx<<" "<<ans<<" "; for( i=0; i<n; i++){ if(i!=mn and i!=mx){ ll k; if(a[i] < a[mn]) k=a[mn]-a[i]; else if(a[mn]<=a[i] and a[mx]>=a[i]) k=0; else k=a[i]-a[mx]; if(b[i]-k>=0){ ans+=b[i]-k; if(a[i] < a[mn]) mn=i; else if(a[mn]<=a[i] and a[mx]>=a[i]) continue; else mx=i; } } } cout<<ans<<"\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...