全wa求助
查看原帖
全wa求助
126998
kokodayoo楼主2020/11/21 09:45

样例对了

#include<iostream>
#include<cstdio>
#define N 1001000
using namespace std;
int n,m,a,b,c;
int q[N],t[N],q1[N][3],t1[N][3];
int r[N];
int main(){
	cin>>n>>m;
	for(int i=1;i<=m;i++){
		cin>>a>>b>>c;
		if(!c){
			q[i]=a;
			t[i]=a*b;
		}else{
			q1[c][0]++;
			q1[c][q1[c][0]]=a;
			t1[c][q1[c][0]]=a*b;
		}
		
	}
	for(int i=1;i<=m;i++){
		for(int j=n;q[i]!=0&&j>=q[i];j--){
			r[j]=max(r[j],r[j-q[i]+t[i]]);
			if(j>q[i]+q1[i][1]){
				r[j]=max(r[j],r[j-q[i]-q1[i][1]]+t[i]+t1[i][1]);
			}
			if(j>q[i]+q1[i][2]){
				r[j]=max(r[j],r[j-q[i]-q1[i][2]]+t[i]+t1[i][2]);
			}
			if(j>q[i]+q1[i][1]+q1[i][2]){
				r[j]=max(r[j],r[j-q[i]-q1[i][1]-q1[i][2]]+t[i]+t1[i][2]+t1[i][2]);
			}
		}
	}
	cout<<r[n]<<endl;
	return 0;
}
2020/11/21 09:45
加载中...