Submission #45128

#TimeUsernameProblemLanguageResultExecution timeMemory
45128PajarajaArt Exhibition (JOI18_art)C++17
100 / 100
421 ms219856 KiB
#include <bits/stdc++.h> using namespace std; pair<long long,long long> a[500007],b[500007]; int main() { int n,cnt=0; scanf("%d",&n); for(int i=0;i<n;i++) scanf("%lld%lld",&b[i].first,&b[i].second); sort(b,b+n); for(int i=0;i<n;i++) { a[cnt].first=b[i].first; a[cnt].second+=b[i].second; if(b[i].first!=b[i+1].first) cnt++; } long long sum=0,sol=-1000000000000000000LL,minn=1000000000000000000LL; for(int i=0;i<cnt;i++) { minn=fmin(minn,-a[i].first+sum); sum+=a[i].second; sol=fmax(sol,sum-a[i].first-minn); } printf("%lld",sol); }

Compilation message (stderr)

art.cpp: In function 'int main()':
art.cpp:7:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d",&n);
  ~~~~~^~~~~~~~~
art.cpp:8:28: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  for(int i=0;i<n;i++) scanf("%lld%lld",&b[i].first,&b[i].second);
                       ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...