比赛 叫图论的DP题 评测结果 AAAAAAAAAA
题目名称 开心的金明 最终得分 100
用户昵称 Hyoi_ctime 运行时间 0.008 s
代码语言 C++ 内存使用 0.43 MiB
提交时间 2017-08-29 20:55:18
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<vector>
#include<algorithm>
using namespace std;
const int maxn=30010;
int n,m;
int w[30],c[30],d[30];
int f[maxn];
int ans;
int main()
{
	freopen("happy.in","r",stdin);
	freopen("happy.out","w",stdout);
	scanf("%d%d",&m,&n);
	for(int i=1;i<=n;i++)
		scanf("%d%d",&w[i],&c[i]),d[i]=w[i]*c[i];
//		for(int i=1;i<=n;i++)
//			for(int v=1;v<=m;v++)
//			{
//				if(v<w[i])
//				{
//					f[i][v]=f[i-1][v];
//				}
//				else
//				{
//					if(f[i-1][v]>f[i][v-w[i]]+d[i])
//					{
//						f[i][v]==f[i-1][v];
//					}
//					else
//					{
//						f[i][v]=f[i][v-w[i]]+d[i];
//					}
//				}
//			}
//	printf("%d",f[n][m]);
	for(int i=1;i<=n;i++)
			for(int j=m;j>=w[i];j--)
				if(f[j]<f[j-w[i]]+d[i])
					f[j]=f[j-w[i]]+d[i];
		printf("%d",f[m]);
		return 0;
}