Problem C: 超市购物
Time Limit: 1 Sec
Memory Limit:
128 MB
SUBMIT: 21
Solved: 10
[SUBMIT][STATUS]
Description
上次去超市扫荡回来的东西用完了,Staginner又得跑超市一趟,出发前他列了一张购物清单,打算去买K种不同的商品,每种买一件。到了超市,Staginner发现每种商品有N个品牌,每个品牌此商品的价格为Vi,对Staginner的作用值为Wi,他会从这N个品牌里面挑一个品牌买。这时,Staginner突然想起出门时只带了M元钱,又懒得去取钱了,所以不一定能买完K种商品,只好尽可能地让买的东西对自己的总作用值ans最大。
Input
多组样例。
第一行两个整数K,M代表Staginner想买的不同种类商品的数目和他带的钱 (0 < K <= 30, 0 < M <= 2000)
以下输入分为K个部分,代表K种商品。
每个部分第一行为一个数字N,代表第k种商品的N个品牌,N不大于10。之后跟着N行,每行两个数字,代表物品的价格Vi和作用值Wi。其中 0 < Vi < M。
Output
输出Case #: 最大总作用值,每两个样例之间有一个空行。
Sample Input
3 100
3
50 600
20 700
30 800
2
30 500
40 600
1
60 200
2 500
2
200 1000
260 1200
1
280 300
Sample Output
Case 1: 1400
Case 2: 1300
HINT
#include<stdio.h>
#include<string.h>
int bag[100][100],dp[2500],val[100][100];
int main()
{
int k,m,n,i,j,t,cnt=0;
while(scanf("%d %d",&t,&m)!=EOF)
{
memset(dp,0,sizeof(dp));
memset(val,0,sizeof(val));
memset(bag,0,sizeof(bag));
for(i=0;i<t;i++)
{
scanf("%d",&n);
bag[i][0]=n;
for(j=1;j<=n;j++)
scanf("%d %d",&bag[i][j],&val[i][j]);
}
for(i=0;i<t;i++)
for(j=m;j>=0;j--)
for(k=1;k<=bag[i][0];++k)
if(bag[i][k]<=j)
dp[j]=dp[j]>(dp[j-bag[i][k]]+val[i][k])?dp[j]:(dp[j-bag[i][k]]+val[i][k]);
printf("Case %d: %d\n",++cnt,dp[m]);
printf("\n");
}
return 0;
}
分享到:
相关推荐
国产芯片“芯海”36 引脚 8 位 OTP ROM 单片机CSU8RP1185D产品说明
芯海CSU32M10系列MCU DEMO程序(基于C代码)
芯海芯片CSU8RF3111文档
CSU8RP1186B 用户手册
此文档详细介绍了CSU18M88芯片的资源
基于芯海开发的IDE平台CSU-IDE使用教程
CSU11XX 系列问题集
CSU8ASM-IDE V1.3.5
许继CSU8000远动软件
CSU8ASM-IDE开发编译软件
包含CSU测试工具包以及User's Guide文档
芯海芯片CSU8RF3111资料
芯海MCU开发工具选型手册芯海8位MCU软硬件开发平台CSU-IDE集成开发环境CSU8ICE-Lite简易仿真器CSWrite烧录器
本程序由芯海科技有限公司技术人员编写...若直接采用该程序进行生产活动或令其于不恰当的工作环境中,造成产品质量问题或人身伤害,芯海科技有限公司对此不承担任何责任。 更多资料,请登陆:http://www.chipsea.com
8位单片机MCU 内置1K×16位程序存储器E2PROM 96字节数据存储器(SRAM) 54字节的E2PROM,用于数据存储 只有43条单字指令 6级存储堆栈 支持ISP
第一章 常用半导体器件 第二章 基本放大电路 第四章 功率放大电路 5~8章简介略,没从老师要第三章,不主要 版权归制作老师所有,仅供分享,希望大家多多支持
第一章 程序设计概述 第二章 Java语言概述 第三章 Java基本语法 第四章 Java语句及其控制结构 第五章 面向对象编程 第六章 类的继承性与多态性 第七章 包、接口和异常 其它章节简介略 版权归制作老师所有,仅供...
导读:本文介绍了芯海科技有限公司OTP芯片CSU8RP3125应用于电子烟上的解决方案,该方案采用芯片内置的±1%精度的16MHZ的高速PWM时钟源,可在宽频率范围内灵活控制LED呼吸灯的变化,同时内置的12 Bit 1%测量误差的高...
这是CSU模拟电子技术B的仿真研讨分数为A的例子。给大家做一个参考!书上内容弄明白为计算机组成原理打好基础就可以了。
初学者适用一章概论,二章数据描述,三章简单程序设计,四章模块化程序设计,五章数组,六章库函数,七章汉字操作,八章编译处理,九章指针。版权归本校老师所有,仅供分享