赞
踩
for (int i=0; i<=V; i++)
{
}
for (int i=1; i<=N; i++)
{
}
hdu FATE
10 10 1 10 1 1 10 10 1 9 1 1 9 10 2 10 1 1 2 2
0 -1 1
附上代码:
- #include<stdio.h>
- #include<string.h>
- #include<iostream>
- using namespace std;
- int bag[102][102];
- int c1[102];//代表消耗的忍耐度
- int c2[102];//代表怪兽数量
- int w[102];//临时增加的经验值
- int main()
- {
- int n,m,k,s;
- int i,j,t;
- int mark;
- while(scanf("%d%d%d%d",&n,&m,&k,&s)!=EOF)
- {
- memset(bag,0,sizeof(bag));
- memset(w,0,sizeof(w));
- memset(c1,0,sizeof(c1));
- for(i=1;i<=k;i++)
- {
- scanf("%d%d",&w[i],&c1[i]);
- c2[i]=1;
- }
- for(i=1;i<=k;i++)
- {
- for(j=c1[i];j<=m;j++)
- {
- for(t=c2[i];t<=s;t++)
- {
- bag[j][t]=max(bag[j][t],bag[j-c1[i]][t-c2[i]]+w[i]);
- }
- }
- }
- mark=0;
- for(i=0;i<=m;i++)
- {
- if(bag[i][s]>=n)//找到消耗最小的忍耐值
- {
- mark=1;
- break;
- }
- }
- if(mark)
- printf("%d\n",m-i);
- else
- printf("-1\n");
- }
- return 0;
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。