80pts
查看原帖
80pts
1380111
easy42楼主2024/9/22 19:31
#include <bits/stdc++.h>

using namespace std;

long long w[110] , v[110];
long long f[110][1010];

int main()
{
	long long t , m;
	cin >> t >> m;
	for( int i = 1 ; i <= m ; i++ )
	{
		cin >> w[i] ;
		v[i] = w[i] ;
	}	
		
	for( int i = 1 ; i <= m ; i++ )
	{
		for( int j = 0 ; j <= t ; j++ )
		{
			f[i][j] = f[i-1][j];
			if( j - w[i] >= 0 )
				f[i][j] = max( f[i][j] , f[i-1][j - w[i]] + v[i] );
		}
	}
	cout << t-f[m][t];
	return 0;
}
2024/9/22 19:31
加载中...