제출 #875445

#제출 시각아이디문제언어결과실행 시간메모리
875445imarnVudu (COCI15_vudu)C++14
140 / 140
174 ms15964 KiB
#include<stdio.h> #define ll long long using namespace std; const int N=1e6+5; ll a[N]{0}; ll cnt=0; void dac(int l,int r){ if(l>=r)return; int m=(l+r)>>1; dac(l,m);dac(m+1,r); int sz1=m-l+1,sz2=r-m; ll le[sz1],re[sz2]; for(int i=0;i<sz1;i++)le[i]=a[i+l]; for(int i=0;i<sz2;i++)re[i]=a[m+1+i]; int li=0,ri=0,mi=l; while(li<sz1&&ri<sz2){ if(le[li]<=re[ri])cnt+=sz2-ri,a[mi++]=le[li++]; else a[mi++]=re[ri++]; }while(li<sz1)a[mi++]=le[li++]; while(ri<sz2)a[mi++]=re[ri++]; } int main(){ int n;scanf("%d",&n); for(int i=1;i<=n;i++)scanf("%lld",&a[i]); ll p;scanf("%lld",&p); for(int i=1;i<=n;i++)a[i]+=a[i-1]-p; dac(0,n);printf("%lld",cnt); }

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

vudu.cpp: In function 'int main()':
vudu.cpp:23:16: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   23 |     int n;scanf("%d",&n);
      |           ~~~~~^~~~~~~~~
vudu.cpp:24:31: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   24 |     for(int i=1;i<=n;i++)scanf("%lld",&a[i]);
      |                          ~~~~~^~~~~~~~~~~~~~
vudu.cpp:25:15: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   25 |     ll p;scanf("%lld",&p);
      |          ~~~~~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...