这个背包问题 哪错了 求大神 5

#include<stdio.h>#defineMaxSize1002typedefstructpakeage{intcount;intv[MaxSize];inth[M... #include <stdio.h>

#define MaxSize 1002

typedef struct pakeage
{
int count;
int v[MaxSize];
int h[MaxSize];
} Pake_age ;

Pake_age c;

typedef struct VALUE
{
int r;
int mv;
} Value;
Value m[MaxSize][MaxSize];

int x[MaxSize],count;

int max(int a,int b)
{
return a>b?a:b;
}

Value * pakeage_0_1(int W,int n)
{
int i,j,k,l;

for(i=0;i<=n;i++)
m[i][0].mv=0,m[i][0].r=0;
for(j=0;j<=W;j++)
m[0][j].mv=0,m[0][j].r=0;

for(i=1;i<=n;i++)
{
for(j=1;j<=W;j++)
{
if(c.h[i]>j)
{
m[i][j].mv=m[i-1][j].mv;
}
else
{
k=m[i-1][j-c.h[i]].mv+c.v[i];
l=m[i-1][j].mv;
if(k>=l)
{

m[i][j].mv=k;
m[i][j].r=0;
m[i][j].r=m[i][j-c.h[i]].r+1;
}
else
{
m[i][j].mv=l;
m[i][j].r=0;
}

}

}
}

return &m[n][W];
}

int main()
{
int i,j,p,q,k,t,n;
Value *s;
scanf("%d",&t);
for(i=1;i<=t;i++)
{
scanf("%d%d",&n,&k);
for(j=1;j<=n;j++)
{
scanf("%d%d",&c.v[j],&c.h[j]);
}

s=pakeage_0_1(k,n);

printf("%d %d\n",s->mv,s->r);

}
return 0;
}
台州2671 http://acm.tzc.edu.cn/acmhome/problemdetail.do?&method=showdetail&id=2671
展开
 我来答
おうし様
2014-08-14 · 超过41用户采纳过TA的回答
知道小有建树答主
回答量:99
采纳率:0%
帮助的人:87.1万
展开全部
http://zhidao.baidu.com/question/215189868.html?oldq=1
这是我之前回答的, 看看对你有没有帮助
更多追问追答
追问
在价值最大的前提下求背包内的最小物品个数c,中间用一个空格隔开。

能满足这个条件?》?
追答
拿数据试 不对不给分呗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
九日行空111
2014-08-14
知道答主
回答量:43
采纳率:0%
帮助的人:11.4万
展开全部
能把你的错误提示贴出来吗
追问
WA

我觉得是下标 记录 有问题 。。 到底怎么记录~~~
追答
我是说编译之后报出来的错误列表
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式