rt,本题这么做时只有90分,第七个点会WA
#include<iostream>
using namespace std;
const int Max=1e7+1;
long long bag[Max],v[10001],vl[10001],vl1[10001];
int main(){
int b,n;
cin>>n>>b;
long long sum=0;
for(int i=1;i<=n;i++){
cin>>vl1[i]>>vl[i]>>v[i];
vl[i]=vl[i]-vl1[i];
sum+=vl1[i];
}
bag[0]=sum;
for(int i=1;i<=n;i++){
for(int j=b;j>=v[i];j--){
bag[j]=max(bag[j-v[i]]+vl[i],bag[j]);
}
}
cout<<bag[b]*5;
}
而如果把
bag[0]=sum;
换成
fill(bag,bag+b+1,sum);
就ac了,请问怎么理解呢