题目:http://www.rqnoj.cn/problem/2


分析:这个题目每一种物品都是有"选"或"不选"两种情况。
属于01背包问题。物品的价格相当于背包问题的"花费",
限定的总钱数是"背包容量"。这里每种物品的效益就是 v[i]*p[i]。

#include<stdio.h>
#include<string.h>

int dp[30001],N;

void ZeroOnePack(int c,int w)
{
  for(int i=N;i>=c;i--)
    dp[i]=dp[i]>dp[i-c]+w?dp[i]:dp[i-c]+w;
}

int main()
{
  int m,v[26],p[26];
  while (scanf("%d%d",&N,&m)!=EOF)
  { 
    //读取数据
    for(int i=1;i<=m;i++)
      scanf("%d%d",&v[i],&p[i]);
    //数据初始化 不要求“装满”
    memset(dp,0,sizeof(dp));

    for(int i=1;i<=m;i++)
      ZeroOnePack(v[i],v[i]*p[i]);

    printf("%d\n",dp[N]);
  }
  return 0;
}


最新文章

  1. iOS 横竖屏切换(应对特殊需求)
  2. Office 365 - SharePoint 2013 Online 之母版页和页面布局
  3. sql导入默认用户解决杰奇cms无法登陆管理员账户问题
  4. DBNull.Value 字段的用法
  5. 配置android source 在ubuntu中编译环境
  6. bzoj1415
  7. android.os.NetworkOnMainThreadException异常处理办法
  8. 面向对象CSS (OOCSS)
  9. Windows 下安装 Oracle 12c 教程
  10. iOS开发系列-九宫格算法-xib
  11. VB.net结束进程
  12. C#取得站点跟目录
  13. Python之列表方法
  14. 08、共享变量(Broadcast Variable和Accumulator)
  15. NetBeans 代码折叠
  16. 清理本地Maven仓库
  17. 命令行能运行,但是在crontab不能正常运行的问题
  18. SublimeText3常用快捷键和优秀插件(亲测)
  19. 修改字段结构之ArcGIS Diagrammer
  20. 20155217 2016-2017-2 《Java程序设计》第3周学习总结

热门文章

  1. Android开发 MediaPlayer播放raw资源MP3文件
  2. leetcode-157周赛-5215黄金矿工
  3. [JZOJ3303] 【集训队互测2013】城市规划
  4. 基于Element-UI的el-table,input框输入实现排序功能
  5. prometheus配置详情
  6. Delphi 最小化窗体到托盘
  7. SQLite wrapper
  8. 互联网金融ABS为何遭遇急刹车?
  9. 导入数据时出现“SqlDateTime 溢出
  10. JAVA 设计模式之 原型模式详解