AC日记——严酷的训练 洛谷 P2430

严酷的训练

思路:

  背包;

代码:

#include <bits/stdc++.h>
using namespace std;
#define maxn 5005
int n,m,bi[maxn],k,k1,k2,dp[maxn],ci[maxn],vi[maxn];
inline void in(int &now)
{
char Cget=getchar();now=;
while(Cget>''||Cget<'')Cget=getchar();
while(Cget>=''&&Cget<='')
{
now=now*+Cget-'';
Cget=getchar();
}
}
int main()
{
in(k1),in(k2),k=k2/k1,in(n),in(m);
for(int i=;i<=m;i++) in(bi[i]),bi[i]=bi[i]*k;
for(int i=;i<=n;i++) in(vi[i]),in(ci[i]),vi[i]=bi[vi[i]];
in(m);
for(int i=;i<=n;i++)
{
for(int v=m;v>=vi[i];v--) dp[v]=max(dp[v-vi[i]]+ci[i],dp[v]);
}
cout<<dp[m];
return ;
}
上一篇:10分钟开发一款“一键二次元化的”AI小程序


下一篇:JavaScript数据结构与算法 - 哈希表详解