60分求助!!!
查看原帖
60分求助!!!
704634
poor_OIer楼主2022/8/8 20:11

dfs暴力60分。

#include<bits/stdc++.h>
using namespace std;
long long v,n;
long long minn=20005;
long long i,value[35];
void dfs(long long step,long long va)
{
	if(step>n)
	{
		if(v-va<minn)
			minn=v-va;
		return;
	}
	if(va+value[step]>v)
		dfs(step+1,va);
	else
		dfs(step+1,va+value[step]);
}
int main()
{
	cin>>v>>n;
	for(i=1;i<=n;i++)
		cin>>value[i];
	dfs(1,0);
	cout<<minn;
	return 0;
}
2022/8/8 20:11
加载中...