求大佬检错!!!!!!!!!!!!!1

P1877 [HAOI2012] 音量调节

``` #include <iostream> using namespace std; int N; int start,maxv; int f1[501],f0[501]; //f1[i]为第i首歌增加音量时第i首歌的最大音量,f0[i]为减小音量的 第i首歌的最大音量 int main() { cin>>N>>start>>maxv; int change; f1[0]=start; f0[0]=start; //初始化 for(int i=1;i<=N;i++) { cin>>change; bool flag=false; if(f1[i-1]+change<=maxv && f1[i-1]!=-1) { f1[i]=max(f1[i],f1[i-1]+change); flag=true; } if(f0[i-1]+change<=maxv && f0[i-1]!=-1) { f1[i]=max(f1[i],f0[i-1]+change); flag=true; } if(!flag) f1[i]=-1; flag=false; if(f1[i-1]-change>=0 && f1[i-1]!=-1) { f0[i]=max(f0[i],f1[i-1]-change); flag=true; } if(f0[i-1]-change>=0 && f0[i-1]!=-1) { f0[i]=max(f0[i],f0[i-1]-change); flag=true; } if(flag==false) f0[i]=-1; if(f1[i]==-1 && f0[i]==-1) { cout<<-1; return 0; } } cout<<max(f1[N],f0[N]); return 0; } ```
by 逝星DS @ 2018-08-16 19:40:43


|