求助
查看原帖
求助
700716
Little_Brown_Rabbit楼主2024/10/26 08:58
#include<bits/stdc++.h>
using namespace std;
int maxans=0;
void cy(int a[],int n,int ans,bool b[],int c[],int time)
{
	bool po=0;
	for(int i=0;i<n;i++)
	{
		if(a[i]<=time && b[i]==1) b[i]=0,cy(a,n,ans+c[i],b,c,time-a[i]),po=1;
		b[i]=1;
	}
	if(!po)
	{
		if(maxans<ans) maxans=ans;
	}
}
int main()
{
	int n,time;
	cin>>n>>time;
	int a[n],c[n];bool b[n];
	for(int i=0;i<n;i++) cin>>a[i]>>c[i],b[i]=1; 
	cy(a,n,0,b,c,time);
	cout<<maxans;
}

P1048 [NOIP2005 普及组] 采药 全MLE了

2024/10/26 08:58
加载中...