P1877求助
查看原帖
P1877求助
225837
jimmyshi29楼主2020/12/20 12:06
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;

bool f[60][1010];
int w[60];

int main() {
	int n, b, m;
	cin >> n >> b >> m;
	for (int i = 1; i <= n; i++)
	{
		cin >> w[i];
	}
	f[0][b] = true;
	for (int i = 1; i <= n; i++)
	{
		for (int j = 1;j <= m; j++)
		{
			if (j - w[i] >= 0) f[i][j] |= f[i - 1][j - w[i]];
			if (j - w[i] <= m) f[i][j] |= f[i - 1][j + w[i]];
		}
	}
	for (int j = m; j >= 0; j--)
	{
		if (f[n][j] == true)
		{
			cout << j << endl;
			return 0;
		}
	}
	cout << -1 << endl;
    return 0;
}

用的是背包,为什么WA了3个点,求助

2020/12/20 12:06
加载中...