首页 > 代码库 > (RQoj 15 采药------rwkj 10.1.5.253 1447) 网上
(RQoj 15 采药------rwkj 10.1.5.253 1447) 网上
#include<stdio.h>
int max(int x,int y)
{
int z;
if (x>y) z=x;
else z=y;
return z;
}
int max(int a,int b)
{
return a > b ? a : b;
}
int main()
{
int time[100],value[100];
int f[1000]={0};
int t,m,i,j;
int max(int x,int y);//.....比较两个数的大小。
scanf("%d%d",&t,&m);//.....输入t与m的值。
for (i=0;i<m;i++)
scanf("%d%d",&time[i],&value[i]);//....输入采某种药的时间与其价值。
for (i=0;i<m;i++)
{
for (j=t;j>0;j--)
{
if (j-time[i]>=0) f[j]=max(f[j],f[j-time[i]]+value[i]);/*.....动态规划的动态转移方程,实际上自己通过笔试就能深刻知道其运行的过程。*/
}
}
printf("%d\n",f[t]);
return 0;
}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。