空间爆了,求助!!!
查看原帖
空间爆了,求助!!!
398855
倾殇楼主2022/10/28 09:57
#include<bits/stdc++.h>
using namespace std;
short k,m,ma=-10,l[60];
int main(){
	cin>>k>>m;
	for(int i=1;i<=m;i++){
		cin>>l[i];
		ma=max(ma,l[i]);
	}
	int dp[k+1][(ma*k+1)]={0};
	for(int i=1;i<=m;i++){
		dp[1][l[i]]=1;
	}
	for(int j=1;j<=ma*k;j++){
		for(int i=1;i<=k-1;i++){
			if(dp[i][j]==1){
				for(int ii=1;ii<=m;ii++){
					dp[i+1][j+l[ii]]=1;
				}
				dp[i+1][j]=1;
			}
			if(i==k-1&&dp[i+1][j]==0){
				cout<<j-1;
				return 0;
			}
		}
	}
	cout<<ma*k;
	return 0;
} 
2022/10/28 09:57
加载中...