请问为啥是10分
#include <iostream>
using namespace std;
int main(){
int n,W,f[400001]={};
cin>>n>>W;
for(int i=1;i<=n;i++){
int v,w,m;
cin>>v>>w>>m;
for(int j=31;j>=0;j--){
if(m&(1<<j)){
for(int k=W;k>=w*(1<<j);k--){
f[k]=max(f[k],f[k-w*(1<<j)]+v*(1<<j));
}
}
}
}
cout<<f[W]<<endl;
return 0;
}
除了第1个,其余集体沦陷