讨论 / j--?
若昕 2013-08-08 02:26:00
点我顶贴 收藏 删除
虽然一次AC,但不知道for(j=tot;j>=t[i];j--)中为什么要有j--?j减的是1吗?

#include"stdio.h"

#include"string.h"

long f[10002],t[10002],d[10002];

long max(long x,long y)

{if(x>=y) return x;

else return y;}

int main()

{

long tot,m,i,j;

scanf("%ld%ld",&tot,&m);

for(i=1;i<=m;i++)

scanf("%ld%ld",&t[i],&d[i]);

memset(f, 0, sizeof(f));

for(i=1;i<=m;i++)

for(j=tot;j>=t[i];j--)

f[j]=max(f[j],f[j-t[i]]+d[i]);

printf("%ld",f[tot]);

getch();

}

查看更多回复
提交回复