《关于我的函数出了点问题这件事》
查看原帖
《关于我的函数出了点问题这件事》
1167566
lizicl楼主2024/6/20 16:38

下面只贴深搜的函数部分,其余部分已检查:

void dfs(int step, int num) {
	if (num >= ans)
		return;
	if (step == n + 1) {
		ans = num;
		return;
	}
	sum[num + 1] = w - c[step];
	dfs(step + 1, num); 
	for (int i = 1; i <= num; i++) {
		if (sum[i] - c[step] >= 0) {
			sum[i] -= c[step];
			dfs(step + 1, num);
			sum[i] += c[step];
		}
	}
}

求各位大佬们帮帮忙吧!

2024/6/20 16:38
加载中...