求助大佬,玄1关
查看原帖
求助大佬,玄1关
905073
zyhe2013楼主2024/1/28 18:47
#include <bits/stdc++.h>
using namespace std;

int n,x,w[1005],l[1005],y[1005],maxn=0,cnt=0;
void dfs(int s,int xy)
{
	if(s==n+1)
	{
		maxn=max(maxn,cnt);
		return;
	}
	if(xy+y[s]<=x)
	{
		cnt+=w[s];
		dfs(s+1,xy+y[s]);
		cnt-=w[s];
	}
	cnt+=l[s];
	dfs(s+1,xy);
	return;
}

int main()
{
	cin>>n>>x;
	for(int i=1;i<=n;i++)cin>>l[i]>>w[i]>>y[i];
	dfs(1,0);
	cout<<maxn;
	return 0;
} 

dfs

60分的打算,帮我搞到60就关

2024/1/28 18:47
加载中...