讨论 / 147为什么输出十一位……输出语句只有printf("%d",f[v]);
fts96c 2012-02-05 14:27:00
点我顶贴 收藏 删除
为什么为什么为什么……

#include "stdio.h"

max(int x,int y)

{

if (x>y) return x;

else return y;

}

void main()

{

int v,n,i,j;

int f[20000];

int w[30];

scanf("%d",&v);

scanf("%d",&n);

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

{

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

for (j=v;j>=w[i];j--)

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

}

f[v]=v-f[v];

printf("%d",f[v]);

}

查看更多回复
提交回复