求助,不知哪里的微调有问题?、
查看原帖
求助,不知哪里的微调有问题?、
372172
Q__A__Q楼主2022/9/29 23:53
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
#define int ll

const int maxn=1110;
const int inf=1e9+7;
int n,m,ans,a[maxn],b[maxn],c[maxn],dp[maxn];

inline int read() {
	int s=0,w=1;
	char ch=getchar();
	while(ch<'0'||ch>'9') {
		if(ch=='-')w=-1;
		ch=getchar();
	}
	while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();
	return s*w;
}

inline void write(int x) {
	if(x<0) putchar('-'),x=-x;
	if(x>9) write(x/10);
	putchar(x%10+'0');
}

signed main() {
//	freopen(".in","r",stdin);
//	freopen(".out","w",stdout);
	n=read(),m=read();
	for(int i=1;i<=n;++i) {
		a[i]=read(),b[i]=read(),c[i]=read(); 
	}
	for(int i=1;i<=n;++i) {
		for(int j=m;j>=0;--j) {
			if(j>=c[i]) dp[j]=max(max(dp[j],dp[j]+b[i]),dp[j-c[i]]+a[i]);
			else dp[j]+=b[i];
		}
	}
	write(5ll*dp[m]);
	return 0;
}
2022/9/29 23:53
加载中...