for(int i=1;i<=n;i++) { if(a[i]+a[i+1]>x) { ans=ans+a[i]+a[i+1]-x; a[i+1]=x-a[i]; } }
如果x=1,a[i]=2,a[i+1]=3,那么a[i+1]就等于-1,这怎么解释, if(a[i]+a[i+1]>x) 看见了,2+3>1也没问题吧,求解!