洛谷 P2722 总分 Score Inflation

2333

  • 题目:
  • 题意:
  • 分析:
  • 代码:


题目:

传送门


题意:

你一共有 n n n个单位时间, m m m组题目可选择,每组题目可以选择无数次,问如何选择才能在 n n n以内是价值最大化


分析:

完全背包不掩饰,详见 y d yd yd蓝书(逃


代码:

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define LL long long
using namespace std;
inline LL read(){
    LL d=0,f=1;char s=getchar();
    while(s<'0'||s>'9'){if(s=='-')f=-1;s=getchar();}
    while(s>='0'&&s<='9'){d=d*10+s-'0';s=getchar();}
    return d*f;
}
int f[10005];
int main()
{
	int n=read(),m=read();
	for(int i=1;i<=m;i++)
	{
		int a=read(),b=read();
		for(int j=0;j<=n-b;j++)
		  f[j+b]=max(f[j+b],f[j]+a);
	}
	cout<<f[n];
	return 0;
}

你可能感兴趣的:(背包,完全背包)