Luogu P1164小A点菜

大意:一共n种菜,每种菜有个价格w[i]。只有m元,问最多几种菜。

#include<cstdio>
#include<algorithm>
using namespace std;

int n,m,w[100005],dp[100005];

int main(){
	scanf("%d%d",&n,&m);
	for(int i=1;i<=n;i++){
		scanf("%d",&w[i]);
	}
	dp[0]=1;
	for(int i=1;i<=n;i++){
		for(int j=m;j>=w[i];j--){
			dp[j]+=dp[j-w[i]];
		}
	}
	printf("%d\n",dp[m]);
}

真可怕我果然不会简单dp QwQ

posted @ 2019-08-09 23:26  Y15BeTa  阅读(94)  评论(0编辑  收藏  举报