dfs,WA60@_@
查看原帖
dfs,WA60@_@
1070708
Caged_Bird楼主2023/9/2 14:01
#include<bits/stdc++.h>
using namespace std;
int V,n,v[35],flag,ans=20005;
void dfs(int step,int now){
	if(now>V||step>n){flag=1;return;}
	dfs(step+1,now+v[step]);
	if(flag==1){ans=min(ans,V-now);flag=0;}
	dfs(step+1,now);
	if(flag==1){ans=min(ans,V-now);flag=0;}
}
int main(){
	cin>>V>>n;
	for(int i=1;i<=n;i++)cin>>v[i];
	dfs(1,0);
	cout<<ans;
	return 0;
}

求助啊!!!!!

2023/9/2 14:01
加载中...