SIXIANG32 @ 2021-01-29 20:57:00
#include<iostream>
#include<vector>
#define f1 fj[p][1]
#define f2 fj[p][2]
using namespace std;
int fj[70][3],v[70],z[70],c[70],f[32010];
int main()
{
int n,m;
cin>>n>>m;
for(int p=1,s;p<=m;p++)
{
cin>>v[p]>>z[p]>>s,z[p]*=v[p];
if(s)fj[s][++c[s]]=p;
}
for(int p=1;p<=m;p++)
for(int i=n;i>=0;i--)
{
if(i>=v[p])f[i]=max(f[i],f[i-v[p]]+z[p]);
if(i>=v[p]+v[f1])f[i]=max(f[i],f[i-v[p]-v[f1]]+z[p]+z[f1]);
if(i>=v[p]+v[f2])f[i]=max(f[i],f[i-v[p]-v[f2]]+z[p]+z[f2]);
if(i>=v[p]+v[f1]+v[f2])f[i]=max(f[i],f[i-v[p]-v[f1]-v[f2]]+z[p]+z[f1]+z[f2]);
}
cout<<f[n]<<endl;
}
呜哇真的没看出来哪里错了,如果是我眼瞎请最下留情/kk
by WRuperD @ 2021-01-29 21:05:59
@SIXIANG 这不是让我老师调了一下午,痛批“恶心题目”的题目吗?
by SIXIANG32 @ 2021-01-29 21:09:00
@WRuperD 那帮我康康/kel
by WRuperD @ 2021-01-29 21:18:37
@SIXIANG 不方便啊。。。
by WRuperD @ 2021-01-29 21:20:07
@SIXIANG 检查一下是否处理对了输入数据
by SIXIANG32 @ 2021-01-30 08:10:49
@WRuperD 艹输入数据检查/fad
找到了,把附件当成主的也尝试加入了/kel
好,我是 SB,这是事实,恒古不变的事实,天翻地覆海枯石烂也改变不了的事实/kk