数据过水
查看原帖
数据过水
891606
2023gdgz01楼主2023/6/29 10:27

暴力n次计数背包

#include <iostream>
#include <cstring>

using namespace std;

int n, m, w[2005], f[2005];

int main()
{
	cin >> n >> m;
	for (int i = 1; i <= n; i++)
	{
		cin >> w[i];
	}
	for (int i = 1; i <= n; i++)
	{
		memset(f, 0, sizeof(f));
		f[0] = 1;
		for (int j = 1; j <= n; j++)
		{
			if (j == i)
			{
				continue;
			}
			for (int k = m; k >= w[j]; k--)
			{
				f[k] += f[k - w[j]];
				f[k] %= 10;
			}
		}
		for (int j = 1; j <= m; j++)
		{
			cout << f[j];
		}
		cout << endl;
	}
	return 0;
}

时间复杂度应是O(n2mn^2m),最坏情况是20003=802000^3=80亿 可是提交AC, 建议加强数据

2023/6/29 10:27
加载中...